《jsp编译指令》ppt课件

上传人:tian****1990 文档编号:74934336 上传时间:2019-01-30 格式:PPT 页数:19 大小:408.31KB
返回 下载 相关 举报
《jsp编译指令》ppt课件_第1页
第1页 / 共19页
《jsp编译指令》ppt课件_第2页
第2页 / 共19页
《jsp编译指令》ppt课件_第3页
第3页 / 共19页
《jsp编译指令》ppt课件_第4页
第4页 / 共19页
《jsp编译指令》ppt课件_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《《jsp编译指令》ppt课件》由会员分享,可在线阅读,更多相关《《jsp编译指令》ppt课件(19页珍藏版)》请在金锄头文库上搜索。

1、第二章 JSP编译指令,当用户访问JSP页面时,JSP页面的处理过程如图所示:,JSP的执行过程,当客户第一次请求JSP页面时,JSP引擎会通过预处理把JSP文件中的静态数据(HTML文本)和动态数据(java脚本)全部转换为java代码, 这个转换工作实际上是非常直观的,对于HTML文本只是简单的用out.println()方法包裹起来,对于java脚本只是保留或做简单的处理。,随即,JSP引擎把生成的.java文件编译成servlet类文件(.class)。 对于Tomcat服务器而言,生成的class文件默认的情况下存放在work目录下 。,编译后的class对象被加载到容器中,并根据用

2、户的请求生成HTML格式的响应页面,HTML格式的响应页面返回到客户端,JSP的执行过程,转译和请求 在执行JSP 网页时,通常可分为两个时期:转译时期(Translation Time)和请求时期(RequestTime) 。 转译时期:JSP 网页转译成Servlet 类,然后编译成Class文件; 用户请求处理时期:Servlet 类执行后,响应结果至客户端。,转译,请求,JSP的执行过程,关于效率: JSP页面的转译、编译工作是在该页面第一次被访问时进行的。所以JSP引擎在第一次处理JSP请求时,请求用户在收到响应前可能有较长的延迟。但在后续的请求中,这些工作都已经完成,时间延迟问题将

3、不复存在。也就是说,当处理后续的用户访问时, JSP和Servlet的执行速度是一样的。,JSP指令一般形式,JSP指令的内部就是一些指令和和一连串的属性设定,如下所示: 也可以写成: Page,include,taglib 指令,Page指令,功能 page 指令是最复杂的JSP指令,它的主要功能为设定整个JSP 网页的属性和相关功能。具体是设置哪种功能,是由其属性指定的。 基本语法 page 指令是以结束: 然而像所有JSP 标签元素一样,page 指令也支持另一种以XML为基础的语法,如下所示: ,Page指令的常用属性,Page 指令定义JSP文件中的全局属性. ,例: ,注意: 指令

4、作用于整个JSP页面,同样包括静态的包含文件。但是指令不能作用于动态的包含文件,比如 可以在一个页面中用上多个指令,但是其中的属性只能用一次,不过也有个例外,那就是import属性。因为import属性和Java中的import语句差不多(参照Java Language),所以你就能多用此属性几次了. 无论把指令放在JSP的文件的哪个地方,它的作用范围都是整个JSP页面。不过,为了JSP程序的可读性,以及好的编程习惯,最好还是把它放在JSP文件的顶部.,Include指令,在JSP中包含一个静态的文件,同时解析这个文件中的JSP语句. 指令将会在JSP编译时插入一个包含文本或代码的文件,当你使

5、用指命时,这个包含的过程就当是静态的。静态的包含就是指这个被包含的文件将会被插入到JSP文件中去,这个包含的文件可以是JSP文件,HTML文件,文本文件。如果包含的是JSP文件,这个包含的JSP的文件中代码将会被执行。 如果你仅仅只是用include 来包含一个静态文件。那么这个包含的文件所执行的结果将会插入到JSP文件中放的地方。一旦包含文件被执行,那么主JSP文件的过程将会被恢复,继续执行下一行.,Include指令注意事项,包含文件中要避免使用、,因为这将会影响在原来JSP 网页中同样的标签,这样做有时会导致错误; 指令是一种静态的SSI(服务器端包含)。 1、所谓的静态是指file不能

6、为一变量,例如: 而以下指令是错误的: ” % 2、SSI意味着不可以在file 所指定的文件后接任何参数,如下: 同时,file 所指的路径必须是相对于此JSP 网页的路径。,Include指令的执行过程,由该执行过程可以得到一个重要结论:在A.jsp已转译的情况下,如B.jsp发生变化,不会引发A.jsp的重新转译。 这是因为JSP引擎仅仅在监视到A.jsp发生变化且再次被用户访问时,才会对A.jsp重新进行转译。而仅仅修改B.jsp是不能触发上述条件的。,当A.jsp第一次被调用时,会引起A.jsp的转译。其中的include指令指示JSP容器将B.jsp的内容插入到include指令所

7、在的地方,共同形成Servlet源文件A$jsp.java,,随后,java文件被编译成class文件,并由容器调用,向客户端返回响应报文。,Taglib指令,Taglib指令主要用于引入一些特定的标记库。 语法格式: ,属性 prefix=“tagPrefix” 用于定制标记的前缀。 uri=“tagLibraryURI” 统一资源标记库,制定一个特定的标记库。 可以是相对路径,也可以是绝对路径。,prefix=“tagPrefix“ 表示标签在JSP中的名称。 在自定义标签之前的前缀,比如,在中的public,如果这里不写public,那么这就是不合法的。请不要用jsp, jspx, ja

8、va, javax, servlet, sun, 和sunw做为你的前缀,这些已被Sun公司声明保留。,taglib指令,uri=“URIToTagLibrary“ Uniform Resource Identifier (URI)根据标签的前缀对自定义的标签进行唯一的命名,URI可以是以下的内容: Uniform Resource Locator (URL), 由 RFC 2396 定义, 可以从以下位置查看 (http:/www.hut.fi/u /jkorpela/rfc/2396/full.html)。 Uniform Resource Name (URN), 由 RFC 2396定义 一个相对或绝对的路径 可以是标签库描述文件,例:, test ,例: (例:page.jsp) 引入一个前缀为“c”的标记库,标记库包括一个mytage元素类型。,

展开阅读全文
相关资源
相关搜索

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

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