JSP基本语法

合集下载

第2章 JSP语法

第2章 JSP语法

五、Java控制结构
• 顺序结构 • 选择结构 • 循环结构
顺序结构
• 按设计时所确定的次序,一个一个语句的顺序执行 • 一般程序主体采用顺序结构,其中嵌套选择和循环结构。
选择结构控制
单选if、 双选if„else、 多选switch
if语句
if (条件表达式) 语句
条件?
True
例:
String x="男",s=""; if(x=="男") s="不能进入";
实践环节: 上机实战,验证结果
• 例3:利用Switch语句编程实现分数和等级的对应 • 0~59:E 60~70:D 70~80:C • 80~90:B 90~100:A
实践环节: 编写网页 exa2_14.jsp:表单页面,输入学生的成绩 exa2_15.jsp:根据成绩值显示成绩的等级
二、循环结构控制
知识点介绍
• 乱码问题: • ex9.jsp页面获取的信息可能是乱码(由很多?组 成),此时必须对含有汉子的字符进行特殊的处 理。
• 解决方案:在获取表单信息之前设置统一编码 • request.setCharacterEncoding("GBK");
• 例1写出程序 • • y= •
-1 0 1
案例
例1: int x=6, y=10, k=5; switch( x%y ) { case 0: k=x*y; break; case 6: k=x/y; break; case 12: k=x-y; break; default: k=x*y-x; break; } 例2: char ch='A'; int r=6; switch( ch+5 ) { case 'A': r=r+3; break; case 'B': r=r+5; break; case 'C': r-=6; break; default : } r/=2;

JSP实验二-JSP基本语法

JSP实验二-JSP基本语法

Java web应用编程基础实验报告实验2:JSP基本语法实验姓名:___ ____班级:______学号:____ _成绩:_____一、实验目的:●熟悉HTML语法,理解和掌握JSP基本语法。

●初步掌握JavaScript的使用●初步掌握利用指令、脚本元素和动作元素,进行简单的JSP和HTML混合编程的方法和技术。

二、实验要求:●理解Web Server,正确使用Apache的Tomcat建立JSP Server。

●编写程序完成以下实验内容,通过手工和MyEclipse两种方式分别完成JSP文件的布署。

●上交实验报告电子文档(文档包含源程序,以班级、学号、姓名依次出现组成的字符串标识文档,以班级为单位上交).三、实验内容:1、采用声明实现访问计数器count.jsp,并在页面中显示:“当前访问本网站的用户数为:**人/次。

"程序:〈%@ page language=”java" import="java.util.*" pageEncoding="GB2312”%〉〈html〉<head〉<title〉网页访问计数〈/title></head>〈body><%if (application。

getAttribute(”count")== null) {application。

setAttribute("count”, new Integer(0));}Integer count=(Integer)application.getAttribute("count");application。

setAttribute("count”, new Integer(count.intValue()+ 1));count=(Integer)application.getAttribute("count");%>〈center>你是第<%=count。

Jsp基本语法

Jsp基本语法

Jsp基本语法Jsp语法分为3类:脚本元素、指令元素、动作元素。

jsp的脚本元素有以下4个:1. 隐藏注释:<%--这是客户端不可见的隐藏注释--%>2. 声明(declarations):<%!这是声明%>3. 脚本段(scriptlets):<%这是脚本段%>4. 表达式(expression):<%=这是表达式%>jsp的指令元素有以下3个:指令主要用来提供整个JSP网页相关的信息,并且用来设定JSP页面的相关属性。

一、page指令功能:设定整个JSP网页的属性和相关功能。

语法:<%@ page attribute1="value1" attribute2="value2" %>标签元素:<jsp:directive.page attribute1="value1" attribute2="value2" />page指令元素的属性language="language" 指定JSP Container要用什么语言来编译JSP网页。

目前只可以使用Java语言,不过不排除增加其它语言。

默认值为Java。

extends="className" 定义此JSP页面产生的Servlet是继承自哪个父类。

必须为实现HttpJspPage接口的类。

JSP规范对不完全理解其隐意的情况下使用此属性提出警告。

import="importList" 定义此JSP页面可以使用哪些Java API。

用逗号分隔列出一个或多个全质类名。

此列表用于在生成的java servlet中创建相应的导入语句。

以下包是自动包含的,不必被指出:ng.*;java.servlet.*;java.servlet.jsp.*;java.servlet.htt.*session="true|false" 指明JSP页面是否需要一个HTTP会话,如果为true,那么产生的servlet 将包含创建一个HTTP会话(或访问一个HTTP会话)的代码,缺省为true。

JSP基本语法

JSP基本语法

JSP脚本JSP通用语法规则JSP通用语法规则包括:JSP的标记规则、JSP元素中的相对路径规则、JSP元素中的转义规则。

JSP的标记规则每一个JSP元素都有一个起始标记和一个结束标记。

起始标记为“<%”或“<jsp:”,结束标记为“%>”或“/>”。

比如:<jsp:include page=”/index.jsp”/><%if(sum>0) sum=sum+42;%>注起始标记和结束标记一定要在同一个JSP页面中,且成对出现JSP元素中的相对路径规则在JSP中可以使用相对路径,相对路径是以字符“/“开头的。

比如:/test/testChinese.jsp——说的实际路径是“C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\test\testChinese.jsp “JSP元素中的转义规则我们已经知道,“<%”和“%>”是JSP中的标记字符,那么如果我们想在程序中用到这两个字符,该怎么区分呢?这就要用到转移规则了。

这里的转义规则包括:“’”被转义为“\’”“””被转义为“\””“\”被转义为“\\”“<%”被转义为“<\%”“%>”被转义为“%\>”下面我们通过一个小例子来看看。

其显示结果如图2-2所示。

图2-2 JSP转义规则示例上面显示结果,可以看到,本来是JSP标记语言的字符,也都显示出来了,实现这样功能的程序代码是怎么样的呢?02-02.jsp文件源代码:<html><head><title>JSP转义规则的例子</title></head><%@page contentType="text/html;charset=gb2312" %><body><p><%out.print("测试要避免冲突的字符串1:\'");%><p><%out.print("测试要避免冲突的字符串2:\"");%><p><%out.print("测试要避免冲突的字符串3:\\");%><p><%out.print("测试要避免冲突的字符串4:%\>");%></p></body></html>JSP脚本元素语法讲了语法规则以后,我们来看看脚本元素,JSP中的脚本元素有四种:注释、声明、表达式和程序段。

第2章 JSP语法

第2章 JSP语法


<jsp :param name= »param2 »value= »value2 »/> </jsp:forward>
<jsp :param name= »param1 »value= »value1 »/>
小结


本章主要介绍了JSP页面的组成、指令、动作等技术,重点介绍 了JSP的page指令、include指令的使用,<jsp:include>、 <jsp:forward>等动作指令的使用。 通过本章的学习,读者可以建立一个简单功能的JSP网站。

1.page指令 page指令就是通过设置内部的多个属性来定义JSP文件中的全局 特性。需要注意的是,page指令只能对当前自身页面进行设置, 即每个页面都有自身的page指令。如果没有对属性进行设置, JSP将使用默认指令属性值。


2.include指令 在JSP开发中,可以将一些重用的代码写入一个单独的文件中, 然后通过include指令引用该文件,从而缓解代码的冗余问题, 修改也比较方便。Include指令语法格式为: <%@ include file=”被包含的文件路径”%>
扩展——代码编写规范


1.JSP文件命名 JSP文件名称要以小写字母命名,名称要体现出该页面的意义, 最好能够与模块名称联系在一起。 例如: login.jsp --登录页面 register.jsp --注册页面 message.jsp --消息页面



新知识点——JSP页面组成、声明、代码段、表达式、注释 JSP页面由两部分组成,一部分为静态部分,即HTML标记,用 来完成数据页面显示;另一部分为动态部分,用来完成数据处理, 包括脚本元素、指令元素和动作元素。 脚本元素用来嵌入Java代码,这些Java代码将成为转换得到的 Servlet的一部分;JSP指令元素用来从整体上控制Servlet的结 构;动作元素用来引入现有的组件或者控制JSP引擎的行为。

第3章:JSP基础语法

第3章:JSP基础语法
JSP基础语法
<1>、掌握JSP中注释语句的使用; <2>、掌握JSP中Script的使用及使用的区别; <3>、掌握page指令的作用; <4>、掌握两种包含语句及两种包含语句的 区别; <5>、掌握跳转指令的操作; <6>、可以使用JSP基础语法结合JDBC完成登 录程序的开发;
JSP注释分两种,一种是显示注释,这 种注释客户端是允许看见的;另一种是隐 式注释,这种注释客户端是无法看见的; 在JSP中最重要的就是Scriptlet脚本小 程序,所有嵌入在HTML代码中的java程序 都必须使用Scriptlet标记出来;在JSP中一 共提供了3中Scriptlet代码; 第一种:<%!%> 第二种:<%%> 第三种:<%=%>一定要明确记住字符 串的内容不可改变这一重要特征,一个 String对象内容的改变,实际上是通过内存 地址的“断开-连接”变化完成的,而本身 字符串的内容没有发生任何变化; 可以直接使用String类中的charAt方法 取出字符串指定位置的字符; 在String中使用indexOf方法可以返回 指定字符串的位置; 在
由于那种嵌入scriptlet的代码看起来很 乱,而且不易管理;所以我们应该使用 scriptlet标签指令 <jsp:scriptlet>这里可以定义一些变 量</jsp:scriptlet>; 在使用标签指令时一定要完结; 在JSP中,pageEncoding指的是jsp页 面本身的编码,而contentType中的charset 是服务器发给客户端的内容编码。

第2章 JSP语法基础 2.3 JSP指令元素、2.4 JSP动作元素

第2章 JSP语法基础 2.3 JSP指令元素、2.4 JSP动作元素
JSP开发案例教程
第2章 JSP语法基础
2.3 JSP指令元素 2.4 JSP动作元素
JSP开发案例教程
本章内容
01 脚本元素 03 JSP指令元素
02 案例ch2.2_datetime: 时间格式化
04 JSP动作元素
05 案例ch2.5_include: 框架类型网页
06 小结与练习
2.3 JSP指令元素
指定在当前页
4
session
中是否允许 10 isThreadSafe 指定是否线程安全
session操作
5
buffer
指定处理页面 输出内容时的 11 缓冲区大小
autoFlush
是定当缓冲区满时是 否自动清空
指定当前页面
说明当前页面是否为
6
errorPage 运行异常时调 12 isErrorPage 其他页面的异常处理
该JSP动作表示获取或创建一个名称为guess的、属于类com.GuessNumber的、生命周期 为session的对象,详见本书案例ch5.4_guessNumber(猜数游戏)。
JSP开发案例教程
所有的动作元素需要两个属性:
id属性
id属性是动作元素的唯一标识,可以在 JSP页面中被引用。动作元素创建的id值 可以通过PageContext来调用。
可以使用绝对或相对URL。 ✓ tagDir属性指示前缀将被用于标识在WEB-INF/tags目录下的标签文件。
2.4 JSP动作元素
JSP开发案例教程
2.4 JSP动作元素
JSP动作元素
➢ JSP动作利用XML语法格式的标记,来控制JSP容器Servlet引擎的行为。 ➢ 利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件

JSP基本语法

JSP基本语法

26
Jsp动作标记- jsp:forward动作标记
3、 jsp:forward动作标记 jsp:forward动作允许将用户请求定位到其它页 面,基本的语法格式是:
<jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} /> 或者 <jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} > <jsp:param name="属性名" value="属性值" /> </jsp:forward>
6
演示:示例 1
JSP Scriptlet 2-1
JSP Scriptlet概念
JSP Scriptlet就是在JSP页面里嵌入一段Java代码
JSP Scriptlet在JSP页面中的表现形式
<% Java代码 %>
7
JSP Scriptlet 2-2
使用JSP Scriptlet进行JSP编程
第九章
JSP 基础(二) 脚本、指令与动作的使用
回顾
JSP 的英文全称是JavaServer Page,是一种 Java服务器端编程技术之一,用于创建动态网页 JSP的页面由静态内容、JSP Scriptlet、 JSP 表 达式、申明、JSP 指令和注释等组成 JSP 生命周期包括转换、编译和执行阶段 JSP 页面可使用 Dreamweaver 和 MyEclipse8.5 等开发工具来创建
24
Jsp动作标记- jsp:param动作标记
ห้องสมุดไป่ตู้ ch9_1.jsp文件内容: <%@ page contentType="text/html;charset=GB2312" %> <%! public String getMax(double x,double y){ if (x>y){ double temp; temp=x; x=y; y=x; } return ("大数是:"+y+",小数是:"+x); } %>

sun公司出品的jsp基本语法卡片

sun公司出品的jsp基本语法卡片

<% code fragment of one or more lines %>
Include Directive
<%@ include file="relativeURL" %>ຫໍສະໝຸດ Page Directive
<%@ page [ language="java" ] [ extends="package.class" ] [ import="{package.class | package.*} , ... " ] [ session="true|false" ] [ buffer="none|8kb|sizekb" ] [ autoFlush="true|false" ] [ isThreadSafe="true|false" ] [ info="text" ] [ errorPage="relativeURL" ] [ contentType="{mimeType [ ; charset=characterSet ] | text/html ; charset=ISO-8859-1}" ] [ isErrorPage="true|false" ] %> <%@ taglib uri="URIToTagLibrary" prefix="tagPrefix" %>
Request Page Page Session Application Page Page Page Page
getAttribute, getParameter, getParameterNames, getParameterValues, setAttribute Not typically used by JSP page authors findAttribute, getAttribute, getAttributesScope, getAttributeNamesInScope, setAttribute getAttribute, getId, setAttribute getAttribute, getMimeType, getRealPath, setAttribute clear, clearBuffer, flush, getBufferSize, getRemaining getInitParameter, getInitParameterNames Not typically used by JSP page authors getMessage, getLocalizedMessage, printStackTrace, toString

JSP基本语法教程

JSP基本语法教程
(2)property
property属性赋予不同的值代表不同的含义。

Property=“*”:这种赋值方式表示所有请求参数
的所有值,用于匹配Bean中的属性值。在Bean
中的属性的名字必须和Request对象中的参数名 一致。

Property=“propertyName”[param=“parameter
4.2.3 脚本段( Scriptlets )
脚本段代码的格式:
<% scriptlet %>
脚本段在Web服务器响应时就会运行。
【注意】
脚本段内不能定义方法。
4.2.4 表达式(Expression)
JSP表达式用来把Java数据直接插入到输出。
表达式的格式为:<%=Java Expression %>
4.3.2 include指令
include指令用于在JSP页面中包含另一个文
件的内容。
include指令的语法格式:
<%@ include file=“relativeURL” %>
“relativeURL”表示此file的路径,路径名一般
来说是指相对路径。 【注意】
include包含文件的内容也是JSP代码,即可以包
Bean的作用域。此属性是可选的,其缺省值为page。
求范围内有效。
session-创建一个与当前用户相关的实例,该实例只在当前用 户范围内有效。
application-创建一个与当前应用相关的实例,该
实例只在当前用户范围内有效。
(3)class
class指Bean的.class文件的名称。
4.4.2 <jsp:setProperty>

ch2-JSP语法基础

ch2-JSP语法基础

清 华 大 学 出 版 社
3
1. HTTP和HTMБайду номын сангаас基础
HTTP协议是基于一种请求(Request)/响应 (Response)式的工作机制。 工作过程:

客户端向服务器发送请求;一个HTTP请求包括4部分: 请求行、请求头标、空行和请求数据等。 服务器接受请求并响应;一个响应也由4部分组成:状态 行、响应头标、空行和响应数据。其中,响应数据主要 以HTML的形式表现数据。 Web服务器关闭本次连结,客户端的浏览器解析响应。
清 华 大 学 出 版 社
7
1. HTTP和HTML基础


DOCTYPE声明元素,即文档类型(是Document Type的简 写),在页面中,用来指定页面所使用的HTML(或者 XHTML)的版本。其语法格式(又称为DTD)为: <!DOCTYPE HTML 顶级元素 可用性 "注册//组织//类型 标签 //定义 语言" "URL">,如本例采用的是HTML 4.0的DTD;需 要注意的,文档类型必须放置在HTML文档的顶部,而且要严 格遵循DTD规则,否则产生的效果将有差异。DOCTYPE标签 也可以省略。 <HTML>标签,表明此文档为HTML文档,并且该文档从此处 开始,最后以</HTML>闭合标签结束该文档。 <HEAD>标签,表明此部分内容为该HTML文档的头部内容, 并以</HEAD>闭合标签结束该部分内容。 <META>标签,META标签是用来在HTML文档中模拟HTTP 协议的响应头报文。META标签用于网页的<HEAD>与 </HEAD>中,META标签的用处很多,其属性有两种:name 和http-equiv。name属性主要用于描述网页,对应于content (网页内容),以便于搜索引擎查找、分类。这其中最重要的 是description(该HTML文档在搜索引擎上的描述)和 keywords(分类关键词),所以应该给每个HTML文档加一个 META值。

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象

JSP基本的语法、3个编译指令、7个动作指令、9个内置对象⽬录⼀、jsp概述JSP是java server page的缩写,其**==本质是⼀个简化的servlet**,是⼀种动态⽹页技术标准。

jsp页⾯是在HTML页⾯中嵌⼊java程序段。

使⽤jsp开发的应⽤程序能够跨平台。

⼆、jsp基本的语法2.1 jsp表达式jsp表达式⽤于向页⾯输出信息。

语法格式例如以下:<%= 表达式 %>如:<%= 5+6 %>注意:<%与=之间不能有空格,=与后⾯的表达式之间能够有空格,另外没有语句结束符号;。

2.2 jsp声明标识声明标识⽤语在jsp页⾯中定义全局的变量或者⽅法,通过声明标识定义的变量和⽅法能够被整个jsp页⾯訪问。

语法格式例如以下:<%!声明变量或者⽅法的代码%>如<%!String str = "test";%>注意:<%与!之间不能有空格,!与其后⾯的代码之间能够有空格。

2.3 jsp代码段代码⽚段就是嵌在jsp页⾯中的java代码或脚本代码。

会在页⾯请求的处理期间被运⾏,java代码能够实现定义变量、流程控制等功能。

脚本代码能够通过使⽤jsp内置对象在jsp页⾯输出内容、处理请求和响应、訪问session等,代码⽚段的语法格式例如以下:<% java代码或者脚本代码 %>2.4 jsp注释2.4.1 HTML注释HTML注释格式:<!-- html凝视 -->html凝视不会显⽰在⽹页中。

在浏览器中查看源代码的时候能够看到注释信息。

2.4.2 代码⽚段注释由于代码⽚段即为java代码或者脚本代码,代码⽚段的注释和java语法⼀样。

单⾏注释写在//之后,多⾏注释写在/* */ 之间,⽂档提⽰注释写在/**与 */之间。

//单⾏注释/*多⾏注释第⼀⾏多⾏注释第⼆⾏*//**⽂档注释*/2.4.3 隐藏注释html注释在查看⽹页源代码的时候能够看到,所以严格来说这样的注释并不安全,jsp提供的隐藏注释在浏览器和查看源代码的时候都看不到。

[计算机软件及应用]JSP教程 JSP语法

[计算机软件及应用]JSP教程 JSP语法

四、指令元素
JSP指令的主要作用是和JSP引擎之间进行沟通,JSP指令发送消息 到服务器端,并不向客户端产生任何输出。所有的指令都在JSP整 个文件范围内有效。
在“<%@”和“%>”之间插入JSP指令,使用格式为: <%@ 指令名 属性1=“值1” [ 属性2=“值2”……] %>
说明: ⑴ 属性值总是用双引号或单引号括起来; ⑵ 属性之间用空格分隔,不需要任何标点。
的形式返回并插入到JSP页面的相应位置。
表达式示例
<%@ page contentType="text/html;charset=GB2312" %> <HTML> <BODY> <P> Sin(0.9)除以3等于
<%=Math.sin(0.90)/3%> <p>3的平方是:
<%=Math.pow(3,2)%> <P>12345679乘72等于
<%=12345679*72%> <P> 5的平方根等于
<%=Math.sqrt(5)%> <P>99大于100吗?回答:
<%=99>100%> </BODY> </HTML>
程序段:Scriptlet
Scriptlet即是Java程序片段,它可以包含任意的Java代码,实现复杂 的操作和控制。
(2) <%”和“%>”之间定义的变量和方法是局部(动态)的;多个用户请求同 一个JSP页面时,各用户间没联系(分别拥有各自的局部变量)。
程序段Scriptlet示例
<%@ page contentType="text/html;charset=gb2312" %> <HTML> <BODY> <% for ( int i=0; i<2; i++ ) { %>

实验四 JSP基本语法训练

实验四 JSP基本语法训练

1、shiyan4_1.jsp代码清单:<%@ page contentType="text/html;charset=gb2312" language="java" import="java.util.*" %><html><head><title>JSP基本语法训练3</title></head><body><%@ include file="shiyan4_3.html"%><center><font size=4 color=red><b>现在的日期和时间<br><%=(new Date()).toLocaleString()%></b></font></center></body></html>在浏览器中显示的结果:2、shiyan4_2.jsp代码清单:<%@ page contentType="text/html;charset=gb2312" import="java.util.*"%> <html><head><title>JSP基本语法训练2</title></head><body><center><font color=blue size=6 face="华文隶书"><%Date today=new Date();int hours=today.getHours();int minute=today.getMinutes();int day=today.getDay();if(hours>=0 && hours<12){out.println("早上好!");}else if(hours>=12 && hours<19){out.println("下午好!");}elseout.println("晚上好!");%></font></center><br><hr><center><font size=4 color=red><b>现在的日期、时间和星期是:<br><%=(new Date()).toLocaleString()%>星期<%=day%></b></font></center></body></html>在浏览器中显示的结果:3、shiyan4_3.jsp代码清单:<%@ page contentType="text/html;charset=gb2312" language="java" import="java.util.*" %><html><head><title>JSP基本语法训练3</title></head><body><%@ include file="shiyan4_3_1.jsp"%><center><font size=4 color=red><b>现在的日期和时间<br><%=(new Date()).toLocaleString()%></b></font></center></body></html>shiyan4_3_1.jsp代码清单:<%@ page contentType="text/html;charset=gb2312" language="java" import="java.util.*" %><html><head><title>JSP基本语法训练3</title></head><body><center><font size=5 face="华文隶书" color=blue>include指令的使用</font><br><hr> </center></body></html>在浏览器中显示的结果:在客户端见到的源文件:<html><head><title>JSP基本语法训练3</title></head><body><html><head><title>JSP基本语法训练3</title></head><body><center><font size=5 face="华文隶书" color=blue>include指令的使用</font><br><hr></center></body></html><center><font size=4 color=red><b>现在的日期和时间<br>2010-12-2 9:31:36</b></font></center></body></html>。

第3章 JSP语法基础

第3章  JSP语法基础

3.5 JSP动作标记 JSP动作标记
<% String dx=request.getParameter("dx"); String dy=request.getParameter("dy"); double x=Double.parseDouble(dx); // int x=Integer.parseInt(dx); double y=Double.parseDouble(dy); %> <html> <body> <p>从这里开始是被加载文件的输出:<br> 传给加载文件的参数dx的值是:<%=dx%>,dy的值是:<%=dy%>。 <br> getMax方法调用结果:<%=getMax(x,y)%> </body> </html>
3.5 JSP动作标记 动作标记
<p>主页面信息:加载ch3_8_1.jsp文件,求两个数的 最大值:下面开始加载。 <jsp:include page="ch3_8_1.jsp" > <jsp:param name="dx" value="<%=dx%>" /> <jsp:param name="dy" value="<%=dy%>" /> </jsp:include> <p>主页面信息:现在已经加载完毕。</p> </body> </html>
3.4 JSP指令标记 指令标记
3.4 JSP指令标记 指令标记

JSP语法基础

JSP语法基础

JSP语法基础1、JSP基本概念JSP(Java Server Pages,Java服务器页面)是一种Web动态页面技术,JSP是嵌入了Java程序段的HTML 文件,由HTML元素(静态部分)、JSP元素(动态部分)和JSP注释组成。

JSP文件后缀名为.jsp。

JSP运行时会被容器翻译为Servlet源代码(xxx_jsp.java)、自动编译为.class文件(xxx_jsp.class)、载入.class文件,然后生成Servlet对象。

JSP和Servlet一样是服务器端技术,允许运行在Web服务器端。

JSP定义在JavaWeb工程中WebRoot根路径下或其下的某个目录,其访问方式和访问HTML文件一致。

注意:如果JSP文件放在WEB-INF目录中时,不能直接访问,需通过Servlet转发。

JSP在运行时会动态编译成一个Servlet,其本质上是就是一个Servlet,JSP是对Servlet技术的扩展。

Servlet完全由Java程序代码构成,擅长于流程控制和业务逻辑处理,一般用作控制器(Controller);JSP 由HTML元素和JSP元素构成,对页面的静态内容和动态内容进行了有效分离,擅长于内容的展示,一般用作视图(View)。

注:翻译生成的xxx_jsp.java和xxx_jsp.class文件的位置:Tomcat中,在apache-tomcat\work\Catalina目录需;在Eclipse中,在workspace下\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\XXX\org\apache\jsp。

2、JSP元素JSP元素包括脚本元素、指令元素和动作元素。

脚本元素(3种)用来声明类成员与方法。

使用<%!与%>声明变量时,必须小心数据共享与线程安全的问题。

JSP语法

JSP语法

隐含对象
• vax.servlet.http.HttpServletRequest 接口的)
• • • •
response(实现javax.servlet.http.HttpServletResponse 接口。) ( Session(javax.servlet.http.HttpSession) ( ) application out
JSP语法
批注
• 客户端可以看到的批注 <!-- comment [ <%= expression %> ] --> • 开发程序员专用的批注 <%-- comment --%> <% /** this is a comment **/ %>
指令
• page 指令
<%@ page [ language="java" ] [ extends="package.class" ] [ import="{package.class | package.*} , ... " ] [ session="true|false" ] [ buffer="none|8kb|sizekb" ] [ autoFlush="true|false" ] [ isThreadSafe="true|false" ] [ info="text" ] [ errorPage="relativeURL" ] [ contentType="{mimeType [ ; charset=characterSet ] | text/html ; charset=ISO8859-1}" ] [ isErrorPage="true|false" ] %>
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

• 数据输出 out对象进行指定字符串的输出。out是JSP中的默认对象,主要用来
输出数据 到客户端网页上。println则是out对象提供将字符串等数据输出网页
的方法, 接受一个特定类型的参数,并且将参数的内容输出到网页上。且其
中每一 行完整的程序语句,均必须以分号(;)作为结束。
<%
out.println("Hello JSP "); out.println("欢迎使用 JSP交互式动态网页 !! ");
– 掌握JSP的动作元素:<jsp:useBean>、 <jsp:getProperty>和<jsp:setProperty>
– 了解JSP的动作元素:<jsp:plugin>
4.1 JSP文件的结构
• 在传统的的网页HTML(*.htm、*.html)中 加入Java程序片断,就构成了JSP网页 (*.JSP)。Web服务器在遇到访问JSP网页 的请求时,首先执行其中的程序片断, 然后将执行结果以HTML格式返回给客 户端。
• 本章学习目标:
– 掌握JSP的脚本元素:“隐藏注释”、“声 明”、“表达式”
– 掌握JSP的指令元素:page、include
– 了解JSP的指令:taglib
– 掌握JSP的动作元素:<jsp:include>、 <jsp:forward>、<jsp:param>
– 掌握include指令和<jsp:include>的区别
• 在J S P中,主要的程序部分就是脚本元素,其中包括三个 部分:声明( De c l a r a t i o n)、表达式 (Ex p r e s s i o n)和代码(Sc r i p t l e t)。从功能上讲 ,声明用于声明一个或多个变量,表达式将是一 个完整的语言表达式,而代码部分将是一些程序片断。 三个脚本元素的基本语法都是以一个“ < %”开头,而以 一个“ % >”结尾的。 声明的例子:
<%! this is a declaration %> 代码的例子:
<% this is a scriptlet %> 表达式的例子:
<%= this is an expression %>
4.2.1隐藏注释(Hidden Comment)
• JSP 语法格式如下: <%-- 注释 --%>
• 不发送到客户端。 • <%--comment for server side only--%> • 注意:隐藏注释内容可以写任意字符串,但是
return nu声明,这里声明了一个公有的变量 number,还声明了一个共有的方法count。这里还需要注 意的是,声明是脚本元素的一部分,在后面的4.2节中将 详细为读者介绍脚本元素。
• JSP原始代码中包含了JSP元素和Template(模板) data两类
4.1.1 创建第一个JSP文件
以下是一段简单的JSP程序,其中包含了最基本的Java语法及重要的JSP网页结构。 【例4-1】 第一个JSP程序helloJSP.jsp <%@ page contentType="text/html; charset=GBK"%> <html> <head> <title>我的第一个JSP程序!!!</title> </head> <body> <%!int number = 1;%> <%--这是声明一个变量 --%> <%!public int count() {
%> 而下面的这行代码使用的是表达式,也是脚本元素的一部分,在表
达式中调 用count方法,计算访问该页面的人数,并在页面上输出结果。 <%= "您是第" + count() + "个客人!" %>
• 声明
<%!int number = 1;%> <%--这是声明一个变量 --%>
<%!public int count() {
• 在浏览器中查看此网页,并刷新,其结 果如图4-1所示。
• 图4-1 helloJSP.jsp执行结果
4.1.2分析JSP文件的组成元素
helloJSP.jsp网页例子的结构 • page指令 <%@ page contentType="text/html; charset=GBK" %> 这行代码为page指令,page是JSP指令元素的一种 • 批注 <%--这是声明一个变量 --%> <%/*这是声明一个方法*/%> <%// JSP程序代码%> <%…%>区块里的程序代码,程序执行的过程中,这些标识的程序代 码都将被忽略。批注在程序中可有可无,然而为了程序日后便于维 护,为程序加上良好的批注,是一个优秀的程序员必须养成的习 惯。
return number++; } /*这是声明一个方法*/%> <% //JSP程序代码 out.println("Hello JSP! "); out.println("欢迎使用 JSP交互式动态网页!! "); %> <br> <%="您是第" + count() + "个客人!"%> <br> </body> </html>
第4章 JSP基本语法
JSP语法
JSP语法分为三种不同的类型
脚本元素(SCRIPTING) 指令元素(DIRECTIVE) 例如: <%@ page import=“java.io.*” %>
动作元素(ACTION) 例如: <jsp:forward>, <jsp:getProperty>,<jsp:include>
• Template data指的是JSP引擎不处理的部分,即 标记<%……%>以外的部分,例如代码中的 HTML的内容等 ,这些数据会直接传送到客户 端的浏览器
• JSP元素则是指将由JSP引擎直接处理的部分, 这一部分必须符合JSP语法,否则会导致编译 错误。
4.2 JSP的脚本元素
• JSP的脚本,即Scripting Elements,包含以下4部分 (1)隐藏注释(Hidden Comment) <%-- 这是客户端不可见的注释 --%> (2)声明(Declaration) <%!这是声明%> (3)脚本段(ScriptLets) <%这是脚本段 %> (4)表达式(Expression) <%=这是表达式 %>
相关文档
最新文档