- 1、本文档共73页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章JSP技术模型
Java Web 编程技术;第5章 JSP技术模型;5.1 JSP语法元素;JSP语法元素;一个简单示例:counter.jsp
%@ page contentType=text/html;charset = gb2312 %
htmlbody
%! int count = 0; %
% count++; %
该页面已被访问 %= count % 次。
/body/html
;在JSP页面中有三种脚本元素:
声明
小脚本
表达式;声明用来在JSP页面中声明变量和定义方法。声明是以%!开头,以%结束的标签,其中可以包含任意数量的合法的Java声明语句。下面是JSP声明的一个例子:
%! int count = 0; % ;下面的代码在一个标签中声明了一个变量和一个方法:
%!
String color[] = {red, green, blue};
String getColor(int i){
return color[i];
}
%
声明语句写在两个JSP声明标签中
%! String color[] = {red, green, blue}; %
%!
String getColor(int i){
return color[i];
}
% ;小脚本(scriptlets)是嵌入在JSP页面中的Java代码段。小脚本是以%开头,以%结束的标签。例如,在程序5.1中的下面一行就是JSP小脚本。
% count++; %
小脚本在每次访问页面时都被执行,因此count变量在每次请求时都增1。
还可以使用小脚本打印HTML模板文本 ;%@ page contentType=text/html;charset = gb2312 %
%! int count = 0; %
%
out.print(htmlbody);
count++;
out.print(该页面已被访问 + count +次。 );
out.print(/body/html);
%
小脚本中的代码必须是合法的Java语言代码,例如下面的代码是错误的,因为它没有使用分号结束一条语句:
% out.print(count) % ;JSP表达式 ;指令(directive)是向容器提供的关于JSP页面的总体信息。
指令是以%@开头,以%结束的标签。
指令有三种类型:page指令、include指令和taglib指令。三种指令的语法格式如下:
%@ page attribute-list %
%@ include attribute-list %
%@ taglib attribute-list % ;page指令通知容器关于JSP页面的总体特性。
page指令通知容器页面输出的内容类型和使用的字符集。
%@ page contentType=text/html;charset = gb2312 %;include指令告诉容器把另一个文件(HTML、JSP等)的内容包含到当前页面中。下面是include指令的一个例子:
%@ include file=copyright.html % ;taglib指令用来指定在JSP页面中使用标准标签或自定义标签的前缀与标签库的URI,下面是taglib指令的例子:
%@ taglib prefix =test uri = taglib.tld %
关于指令的使用需注意下面几个问题:
标签名、属性名及属性值都是大小写敏感的;
属性值必须使用一对单引号或双引号括起来;
在等号(=)与值之间不能有空格。关于指令的使用需注意下面几个问题:;动作(actions)是页面发给容器的命令,它指示容器在页面执行期间完成某种任务。动作的一般语法为:
prefix:actionName attribute-list /
在JSP页面中可以使用3种动作:
JSP标准动作
标准标签库(JSTL)中的动作
用户自定义动作。
例如,下面一行指示容器把另一个JSP页面copyright.jsp的输出包含在当前JSP页面的输出中:
jsp:include page=copyright.jsp /
;htmlbody
Welcome!
%- - JSP 注释 - -%
% //Java 注释 %
!- - HTML 注释 - -
/body/html
;5.2.1 JSP页面也是Servlet
5.2.2 理解转换单元
5.2.3 JSP生命周期阶段
;JSP页面尽管从结构上看起来类似于HTML页面,但它实际上是作为Servlet运行的。容器解析JSP文件并产生相应的Java文件,该文件声明了一个Servlet类,其成员直接映射到JSP文件的元素上。
接下来,容器编
文档评论(0)