JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解

上传人:w****i 文档编号:94451089 上传时间:2019-08-07 格式:PPT 页数:37 大小:252KB
返回 下载 相关 举报
JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解_第1页
第1页 / 共37页
JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解_第2页
第2页 / 共37页
JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解_第3页
第3页 / 共37页
JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解_第4页
第4页 / 共37页
JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解》由会员分享,可在线阅读,更多相关《JSP程序设计 教学课件 ppt 范立锋 乔世权 程文彬 第03章 JSP语法详解(37页珍藏版)》请在金锄头文库上搜索。

1、第3章 JSP语法详解,3.1 JSP文件的组成,3.3 JSP脚本元素,3.4 JSP指令元素,3.5 JSP动作元素,3.2 JSP注释方式,3.1 JSP文件的组成,3.1.1 JSP页的创建,3.1.2 JSP文件的组成元素,3.1.3 JSP转义字符,返回,一个简单的JSP页面:,JSP页的创建, 第一个JSP程序 ,运行效果:,返回,JSP文件的组成元素(1),1JSP中的指令标识,利用JSP指令可以使服务器按照指令的设置来执行动作和设置在整个JSP页面范围内有效的属性。例如:,2HTML标记语言,HTML标记语言在JSP页面中作为静态的内容,浏览器将会识别这些HTML语言并执行。

2、在JSP程序开发中,这些HTML标记语言主要负责页面的布局、设计和美观,可以说是网页的框架。,JSP文件的组成元素(2),3加入Java代码,加入到JSP页面中的Java代码,在客户端浏览器中是不可见的。它们需要被服务器执行,然后由服务器将执行结果与HTML标记语言一同发送给客户端进行显示。通过向JSP页面中加入Java代吗,可以使该页面生成动态的内容。例如:,4JSP表达式,JSP表达式主要用来输出,它可以向页面输出内容显示给用户,还可以用来动态的指定HTML标记中属性的值。 例如:,返回,JSP转义字符,转义字符是以“”开头的特殊字符,在屏幕上是不能显示的,而且在程序中无法用一般形式的字符

3、表示,只能用这种特殊形式表示。常见的转义字符如表所示:,返回,3.2 JSP注释方式,3.2.1 HTML注释,3.2.2 JSP隐藏注释,3.2.3 脚本段注释,注释语句可以帮助程序员识别和理解程序代码。在JSP页面中主要存在3种注释方式,分别为HTML注释、JSP隐藏注释及脚本段注释,返回,HTML注释,HTML注释的语法格式如下:, ,HTML注释将被发送到客户端,但不直接显示,用户在客户端源代码中可以查看到。,例如:,返回,JSP隐藏注释,JSP注释语句在传输到客户端的过程中会被过滤掉,不会发送到客户端。JSP隐藏注释语法格式如下:,例如:,返回,脚本段注释,脚本段中包括两种注释方式:

4、单行注释和多行注释,1单行注释,单行注释是以“/”符号后面的所有内容为注释内容,服务器对该内容不能进行任何操作。脚本段在客户端通过查看源代码是不可见的,单行注释的格式如下:,/ 注释内容,2多行注释,多行注释通过“/*”和“*/”符号进行标记,这两个标记必须成对出现,在它们之间输入的注释内容可以换行。多行注释格式如下:,/* 注释内容1 注释内容2 注释内容3 */,返回,3.3 JSP脚本元素,3.3.1 声明语句,3.3.2 脚本段,3.3.3 JSP表达式,JSP中脚本元素包括3部分:声明语句、脚本段及JSP表达式,在JSP页面中需要通过特殊的约定来表示这些元素,并且对于客户端这些元素是

5、不可见的,它们都是由服务器执行。,返回,声明语句,声明语句(Declaration)在JSP页面中定义方法和变量,其声明格式如下:,在页面中通过声明元素声明的方法和变量,在整个页面内都有效,它们将称为JSP页面被转换为类文件后中的方法和属性,并且他们会被多个线程即多个用户共享。也就是说,其中的任何一个线程对声明的变量或方法的修改都会改变它们原来的状态。它们的生命周期从创建到服务器关闭后结束。,注意:在“%”与“!”之间不要空格。声明的语法与在Java语言中 声明变量和方法是一样的。,返回,脚本段,脚本段(Scriptlets)就是JSP代码片段或脚本片段,嵌在“”标记中。在脚本段中可以定义变量

6、、调用的方法和进行各种表达式运算,且每行语句后面加入分号。这种Java代码在Web服务器响应请求时会运行。脚本段使用格式如下:,说明:脚本程序的使用比较灵活,实现的功能是JSP表达式无法实现的。,返回,JSP表达式,JSP表达式用来把Java数据向页面直接输出信息,其使用格式如下:,JSP表达式与JSP页面中嵌入到脚本段中的out.print()方法实现的功能相同。如果表达式输出的是一个对象,则该对象的toString()方法被调用,表达式将输出toString()方法返回的内容。 例如:,运行结果:,返回,3.4 JSP指令元素,3.4.1 页面指令元素:page 3.4.2 包含指令元素:

7、include 3.4.3 提供动作指令元素:taglib,JSP指令元素主要包括3种:Page指令、Include指令及taglib指令。以“”标记开始,以“%”标记结束。,返回,页面指令元素:page(1),page指令即页面指令,用于定义JSP文件中有效的属性。该指令可以放在JSP页面中的任意位置。Page指令包含多种属性,通过设置这些属性可以影响到当前的JSP页面。Page指令中除import属性外,其他属性只能在指令中出现一次。Page指令语法格式如下:,页面指令元素:page(2),page指令各属性所具有的功能如下:,language:设置当前页面中编写JSP脚本使用的语言。 i

8、mport:用于向JSP文件中导入需要用户的类包。在Page指令中可多次使用该属性来 导入多个包 。 contentType:设置响应结果的MIME类型。默认MIME类型是text/html,默认字符编码 为ISO-8859-1。当多次使用Page指令时,该属性只有第一次使用有效 。 session:说明当前页面是否支持session ,默认值为ture ,表示支持session 。 buffer:设置out对象使用的缓冲区的大小。如设置为none,说明不使用缓存,而直接 通过out对象进行输出;如果将该属性指定为数值,则输出缓冲区的大小不 应小于该值。默认值为8KB 。 autoFlush:

9、设置输出流的缓冲区是否自动清除。默认设置值为true,说明当缓冲区已满 时,自动将其中的内容输出到客户端。如果设置为false,则当缓冲区中的 内容超出其设置的大小时,会产生“JSP Buffer overflow”溢出异常 。 isThreadSafe:默认值为true,说明当前JSP页被转换为Servlet后,会以多线程的方式来 处理来自多个用户的请求;如果设置为false,则转换后的Servlet会实现 SigleThreadModel接口,该Servlet将以单线程的方式来处理用户请求,即 其他请求必须等待直到前一个请求被处理结束。,页面指令元素:page(3),page指令各属性所具

10、有的功能(续):,info:设置为任意字符串,如当前页面的作者或其他相关的页面信息。可以通过 Servlet.getServletInfo()方法来获取设置的字符串 。 errorPage:指定一个当前页面出现异常时所要调用的页面。如果属性值是以“/”开头的 路径,则将在当前Web应用的根目录下查找文件;否则,将当前页面的目 录下查找文件 。 isErrorPage:设置为true,说明在当前页面中可以使用excpetion异常对象。若在其他页面 中通过errorPage属性指定了该页面,则当调用页面出现异常时候,会跳转 到该页面,并且在该页面中可以通过exception对象输出错误信息。相反

11、, 如果将该属性设置为false,则在当前页面中不能使用execption对象。该属 性默认值为false 。 isELlgnored:可以使JSP容器忽略表达式语言“$”。其值只能是ture或false。设置为true 则忽略表达式语言;设置为false,则不忽略表达式语言 。 extends:设置当前JSP页产生的Servlet是继承哪个父类。在JSP中通常不会设置该 属性,JSP容器会提供转换后的Servlet继承的父类。并且如果设置该属性, 一些改动会影响JSP的编译能力 。 pageEncoding:用来设置JSP页字符的编码,默认值是“ISO-8859-1” 。,返回,包含指令元素

12、:include,include指令用于在当前的JSP页面中在当前使用该指令的位置嵌入其他的文件,如果被包含文件有可以执行的代码,则显示代码执行结果。include指令的语法格式如下:,include指令只存在file属性,表示此file的路径,路径名指的是相对路径,不需要指定端口、协议或域名等。该属性不支持任何表达式,也不允许传递任何参数。,注意:如果该属性值以“/”开头,那么指定的是一个绝对路径,将在当前 应用的根目录下查找文件,如果是以文件名称或文件夹名开头, 那么指定的相对路径将在当前页面的目录上查找文件。,返回,提供动作指令元素:taglib,taglib指令可以在页面中使用这些基本

13、标记或自定义的标记来完成特殊的功能,在JSP页面中启动客户端定制行为。taglib指令语法格式如下:,taglib元素具有两个属性:,uri:该属性指定了JSP要在web.xml文件中查找的标签库描述符,该 描述符是一个标签描述文件(*.tld)的映射。在该标签描述文 件中定义了该标签库中各个标签名称,并为每个标签指定一个 标签处理类。,prefix:该属性指定了标签的前缀,此前缀不能使用已被sun公司声 明保留字。前缀名不能为jsp、jspx、java、javax、servlet、 sun、和sunw。,例如:,返回,3.5 JSP动作元素,3.5.1 包含文件:,3.5.2 请求转发:,3

14、.5.3 声明使用JavaBean:,3.5.4 设置JavaBean属性值:,3.5.5 获取JavaBean属性值:,3.5.6 声明使用Java插件:与,3.5.7 参数传递:与,3.5.8 其他动作元素,返回,包含文件: (1),该元素允许包含动态或静态文件,如果包含的文件是静态的,它仅仅是把包含文件的内容加到JSP文件中去。包含静态文件的使用格式如下:,如果包含的文件是动态的。这个被包含文件也会被JSP编译器执行,并且在编译时可以传递参数。包含动态文件使用格式如下:,包含文件: (2),属性及子元素,page属性:该属性指定了被包含文件的路径,其值可以是相 对路径的表达式。当路径是以

15、“/”开头时,则按 照当前应用的路径查找该文件;如果路径是以文 件名或目录名称开头,那么,将按照当前的路径 查找被包含的文件。 flush属性:该属性标识当输出缓冲区满时,是否清空缓冲区 该属性默认值为false,通常情况下设置为true。 子元素:该子元素可以向被包含的动作页面中 传递参数。,包含文件: (3),与include指令的区别,(1)是直接包含源代码,包含请求的 HTML代码,并且支持JSP表达式和Struts应用中的请求模式。 (2)通过包含一个JSP页面,在包含的页面中相关的 response操作都被忽略,也就是说当前操作不能通过response对象 重定向到其他页面。如果用

16、包含的JSP页面,在该 页面中所有的response操作都会正常运行。 (3)元素请求代码时,可以带参数,而就不 可以带参数。 (4)从执行速度角度上讲,比请求速度快, 因为仅处理一个请求,而处理两个请 求。 (5)从实际应用角度上讲,用于检测用户是否登录、网 站标识或网站的一些静态不变的信息;而用于发送 一个请求,并接收返回的HTML,并可以加入参数。,返回,请求转发:,该元素用于将客户端请求从一个页面转发到另一个JSP页面、HTML或相关的资源文件中。当该元素被执行后,当前页面将不再被执行,而是去执行该元素指定的目标页面。使用格式如下:,如果转发目标是一个动态文件,还可以向该文件中传递多个参数,具体使用格式如下:, ,参数及元素说明:,page属性:该属性指定了目标文件的路径。 元素:该元素用来向动态的目标文件中传递参数。,返回,声明使用JavaBean: (1),该元素可以在JSP页面中创建一个JavaBean实例,并且通过属性的设置可以将该实例存储到JSP中的指定范围内。使用格式如下:, 其他元素设置

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号