java web应用开发技术实用教程-第2章 jsp基础_第1页
java web应用开发技术实用教程-第2章 jsp基础_第2页
java web应用开发技术实用教程-第2章 jsp基础_第3页
java web应用开发技术实用教程-第2章 jsp基础_第4页
java web应用开发技术实用教程-第2章 jsp基础_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2018/1/12,1,Java Web开发技术,第2章 JSP基础,2018/1/12,Java Web开发技术,2,第2章 JSP基础,2.1 JSP页面的基本组成 2.2 JSP页面中的注释2.3 声明2.4 代码段2.5 表达式2.6 JSP指令 2.7 JSP动作 2.8 本章小结,2018/1/12,Java Web开发技术,3,2.1 JSP页面的基本组成,一个JSP页面是由传统的HTML页面标记加上JSP标记和嵌入的Java代码组成,由以下4种元素组成:HTML标记、JSP标记、JSP脚本和注释。 JSP标记包括指令标记和动作标记。指令标记是为JSP引擎而设计的,它向JSP引擎发送消息,告诉引擎如何处理其余JSP页面。动作标记是JSP页面特有的标记,它告诉Web容器去执行某个“动作”。,2018/1/12,Java Web开发技术,4,JSP页面的基本组成(续),JSP脚本是JSP页面中插入的Java代码,它又可以细分为声明、代码段和表达式。声明用于定义特定于JSP页面(Servlet类)的变量、方法和类;代码段是嵌入的Java语句;表达式是Java脚本中输出语句的简化表示形式。课本例exa2_1.jsp、exa2_2.jsp,2018/1/12,Java Web开发技术,5,JSP页面的执行过程,当服务器上的一个JSP页面第一次被请求时,Web服务器上的JSP引擎首先将JSP页面编译成Servlet,然后执行该Servlet。该Servlet主要完成以下2项任务:(1)把JSP页面中的HTML标记交给客户端的浏览器去解释执行。(2)把JSP页面中的JSP指令标记、动作标记、JSP声明、代码段和表达式交给服务器去执行,然后将结果送给浏览器。,2018/1/12,Java Web开发技术,6,JSP页面的通用书写规则,JSP页面中HTML标记不区分大小写 ,JSP标记和页面中嵌入的Java代码区分大小写。在JSP页面中,虽然指令和脚本元素所拥有的语法不是基于XML的,但可以获得一种可以替代的基于XML的语法。 在标记中出现的属性值总是用引号括起来的:使用单引号或双引号。,2018/1/12,Java Web开发技术,7,JSP页面的通用书写规则 (续),JSP使用的URL地址要遵循 Servlet的惯例 在JSP文档体中的文本中的空白符无关紧要,空白包括空格和空行。 在标记中可以使用字符” ”(反斜杠)来作为换码字符,2018/1/12,Java Web开发技术,8,2.2 JSP页面中的注释,2.2.1 HTML注释 2.2.2 隐藏注释 2.2.3 脚本注释,2018/1/12,Java Web开发技术,9,2.2.1 HTML注释,HTML注释是使用标签“”创建的语法形式: 课本例exa2_3.jsp、exa2_4.jsp,2018/1/12,Java Web开发技术,10,2.2.2 隐藏注释,隐藏注释也称为JSP注释,只能在原始JSP文件中看到。 语法形式: 课本例exa2_5.jsp,2018/1/12,Java Web开发技术,11,2.2.3 脚本注释,在JSP页面的java脚本中使用的注释。其语法形式为: / 单行注释 /* 注释 */脚本注释不仅能在原始JSP文件中看到,而且能在JSP编译成的Servlet中看到。课本例exa2_6.jsp,2018/1/12,Java Web开发技术,12,2.3 声明,2.3.1 变量声明2.3.2 方法声明2.3.3 声明类,2018/1/12,Java Web开发技术,13,声明概述,JSP声明定义网页范围的变量、函数或类,让页面的其余部分能够使用。 声明的变量和方法是该页面所对应的Servlet类的成员变量和成员方法,声明的类是Servlet类的内部类。 声明块包含在中 。包括变量声明、方法声明和声明类三种。,2018/1/12,Java Web开发技术,14,2.3.1 变量声明,用于定义特定于 JSP 页面的变量,声明的变量成了 JSP 页面转换到的 Servlet 类的成员变量,可以被该JSP页面中其他任何部分使用。 其语法形式为:声明的变量类型可以是Java语言中允许的任何数据类型。,2018/1/12,Java Web开发技术,15,2.3.2 方法声明,声明的方法在JSP页面有效,它编译成Servlet 类的成员方法。可以由页面上所有脚本元素访问。 其语法形式为: 方法声明方式跟Java中方法定义的形式一样,要给出方法返回类型、方法名、方法形参和方法体。课本例exa2_7.jsp 、exa2_8.jsp 、exa2_9.jsp,2018/1/12,Java Web开发技术,16,2.3.3 声明类,声明类是JSP页面对应的Servlet类的内部类,页面上所有脚本元素都可以创建该类的对象。其语法形式为:课本例exa2_10.jsp,2018/1/12,Java Web开发技术,17,2.4 代码段,代码段是包含在之间的Java程序片段,包含一个或多个有效而完整的语句。当Web服务器接受客户端请求时,这段Java程序代码会被执行并向客户产生输出。 其语法形式为: 课本例exa2_11.jsp、 exa2_12.jsp,2018/1/12,Java Web开发技术,18,代码段的注意事项,一个JSP页面可以有多个代码段,它们被JSP引擎按顺序执行。在代码段中也可以声明变量,但这些变量是_jspService()中的局部变量,它们在JSP页面内所有代码段部分和表达式部分有效。,2018/1/12,Java Web开发技术,19,代码段的注意事项(续),当JSP页面包含多个Java代码段时,这些代码段之间可以插入一些标记元素。当客户请求一个JSP页面时,JSP引擎为每个客户产生一个线程,每个线程分别执行各自的_jspService()方法,因此一个客户对局部变量的操作不会影响其它客户。,2018/1/12,Java Web开发技术,20,2.5 表达式,JSP页面中可以在之间插入表达式,用于输出表达式计算的结果。在请求处理阶段JSP引擎将计算表达式的值,结果最终转换成一个相应的字符串。表达式的语法形式为: 课本例exa2_13.jsp,2018/1/12,Java Web开发技术,21,表达式的组成,表达式可以由以下组成部分构成:数字和字符串的字母值,比如2和“hello”数学运算符,如+、-、*和基本数据类型的变量声明类的对象实例在JSP中声明方法的调用声明类所创建的对象的方法调用,2018/1/12,Java Web开发技术,22,表达式的注意事项,(1)“%=”是一个完整的符号,“ 其中,page属性表示要包含的文件的相对地址,它可以是一个字符串,也可以是一个JSP表达式。flush属性默认为false,若为true则表示当缓冲区满时,缓冲区将被清空。,2018/1/12,Java Web开发技术,42,动作语法二,动作语法二: flush=true|false /课本例exa2_17.jsp,2018/1/12,Java Web开发技术,43,include指令和include 动作区别,(1)嵌入的内容。include指令嵌入的是静态的文本或页面,而include动作包含的可以是静态或动态内容。(2)嵌入被包含页面的时间。include动作在处理请求时才将被包含页面嵌入进来,而include指令是在JSP文件被转换成Servlet的时候引入文件。(3)共享局部变量。用include动作时,在页面中声明的变量不可用于另一文件;而在用include指令时,当前页面和被包含页面可以共享变量。,2018/1/12,Java Web开发技术,44,include指令和include 动作区别(续),(4)修改的生效时间。用include指令时,修改的生效需刷新页面或去掉已经编译成的Servlet;而用include动作时,被包含页面的修改会随时生效。(5)变量名冲突。用include指令时注意新生成的JSP页面要符合JSP语法要求,应该避免变量名的冲突。而用include动作不存在变量名冲突问题。,2018/1/12,Java Web开发技术,45,2.7.2 动作标记,标记提供了“名称值”信息,用于将附加在request中的参数发送至转发的页面,可与 、和标记一起使用。,2018/1/12,Java Web开发技术,46,动作的语法,动作标记的语法形式为: / name属性指定参数的名称,value属性指定参数的值。 课本例exa2_18.jsp,2018/1/12,Java Web开发技术,47,2.7.3 动作标记,动作将当前页面的执行过程终止忽略它的输出并且把请求转向一个新的页。 语法格式一: /,2018/1/12,Java Web开发技术,48,动作标记语法二,语法格式二: /课本例exa2_19.jsp、exa2_20.jsp,2018/1/12,Java Web开发技术,49,forword动作标记注意事项,使用标记时,JSP页面必须使用缓冲机制,不能将page指令中的buffer属性设为none。否则它将清空缓存里的内容,浏览器里将得不到任何输出。 一旦JSP页面中加入,则它之后的程序将无法执行 ,标记将停止当前页面的处理而转向目标页面。,2018/1/12,Java Web开发技术,50,2.7.4 动作标记,动作将导致在客户端浏览器中运行一个指定的applet或者JavaBean。并且如果还需要下载一个Java插件,JSP容器一般会提供一个缺省的下载URL,但是你也可以通过指定属性ieplugurl提供一个下载插件的URL。,2018/1/12,Java Web开发技术,51, 动作标记语法,动作的语法格式为: 提示信息:提示用户浏览器是否下载插件 课本例exa2_21.jsp,2018/1/12,Java Web开发技术,52,2.7.5 动作标记,动作用来装载一个在JSP页面中使用的JavaBean。 这个动作标记功能非常有用,因为它使得我们可以发挥Java组件重用的优势。它使得JSP页面中的HTML代码与Java代码分开,用HTML完成页面的静态部分,用动作标记完成页面的动态部分。,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论