版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,Java Web技术,Copyright 2008 By Neusoft Group. All rights reserved,2,JSP 动作元素,3,1、JSP动作元素的概念 2、基本的JSP动作元素 3、页面复用技术,4,1、JSP动作元素的概念,JSP技术规范定义了一些所有兼容的Web容器都必须实现的标准JSP动作元素。这些JSP动作与JSP指令作用在JSP的转义阶段不同,它们是在用户请求处理阶段才被JSP引擎处理的。 JSP1.2规范中,主要有以下几项动作元素:,5,1、JSP动作元素的概念 2、基本的JSP动作元素 3、页面复用技术,6,2、基本的JSP动作元素 2.1 2.2
2、 2.3 2.4,7,2.1,概念 元素允许在一个JSP响应中动态包含来自该JSP外的其他内容。这种包含是动态的,在每次JSP被调用时,被包含的内容将被重新计算。这一点与指令是不同的。 语法 ” flush=“true | false ” / 或 flush=true | false /,page可以代表一个相对路径,即你所要包含进来的文件位置或是经过表达式所运算出的相对路径,flush 接受的值为boolean,假若为true,缓冲区满时,将会被清空。flush 的默认值为false。在JSP 1.2 之前,flush 必须设为true,若page属性需要参数,则可在元素中指定参数的名称和值
3、。参数值甚至可以指定表达式,8,2.1,例子: http:/localhost:8080/JSPTest/IncludeFirst.jsp 利用include动作与参数值进行不同页面显示,9,2.1,动作元素的工作原理,A.jsp页面被访问。注意到A.jsp中有一个包含动作,A.jsp页面已经转译好的A$jsp.class被访问。在A$jsp.class的_jspService方法中,存在专门的Java代码,以向B.jsp请求信息,B.jsp受到来自A.jsp的请求后,用处理来自客户端请求类似的方法处理来自A.jsp的请求。结果返回给A.jsp,A.jsp将来自B.jsp的结果合并到响应文本中
4、,一同返回给客户端,10,2.1,动作元素的工作特点 一、注意与include指令的区别。include指令是在JSP转译前起作用的。假设A.jsp用包含指令包含了B.jsp,则包含进来的B.jsp的原文。B.jsp的内容将直接影响转译的结果。因此,一般对B.jsp内容有一定要求,如:要避免使用、等。include动作是在处理用户请求时起作用的。假设A.jsp用包含动作包含了B.jsp,其实包含进来的是B.jsp的运行结果。B.jsp的内容并不参与A.jsp的转译过程。因此可以进行参数传递。 二、每次访问A.jsp都会引起对B.jsp的调用 假设A.jsp用包含动作包含了B.jsp,则当用户访
5、问A.jsp时,A$jsp.class会动态调用B$jsp.class。如果B.jsp发生的变化,在运行必然会引起JSP容器检查B.jsp是否发生变化,B.jsp重新转译后才输出结果给A.jsp,11,2.1 Include动作与include指令的区别示例,http:/localhost:8080/JSPTest/IncludeA.jsp 1.当IncludeA.jsp中使用的是include指令包含InC.jsp 2. 当IncludeA.jsp中使用的是include动作包含InC.jsp,12,2.1,B.jsp- -A.jsp- CH5 - A.jsp,两个包含动作将在A$jsp.j
6、ava的_jspService方法中留下两个“代码片断”,这些代码片断负责向B.jsp发出请求并获得结果。 在A$jsp.class运行时,向B.jsp请求的结果被合并到A.jsp的输出中,http:/localhost:8080/JSPTest/CH05/IncludeAction/A.jsp,13,2.1,与include指令相同,include动作也是位置敏感的,即被包含JSP的运行结果将输出在include动作的位置上,14,2.2,概念 动作将客户端所发出来的请求,从一个JSP 网页转交给另一个JSP网页。forward动作将会引起Web服务器的请求目标转发。转发的工作机制与重定向不
7、同,这些工作都是在服务器端进行的,不会引起用户端的二次请求,因此效率较重定向要高。不过有一点要特别注意,标签之后的程序将不能执行。 语法 与include动作相同,可以使用jsp:param设定转发的请求参数,15,示例,ForwardFrom.jsp - CH5 - ForwardFrom,16,ForwardTo.jsp - CH5 - ForwardTo 由ForwardFrom.jsp传递过来的参数为:,示例,http:/localhost:8080/JSPTest/CH05/ForwardFrom.jsp,17,工作原理,客户端向服务器的ForwardFrom.jsp发出请求 htt
8、p:/mycompany/ForwardAction/ForwardFrom.jsp,ForwardFrom.jsp在处理过程中,遇到动作,ForwardFrom.jsp向客户端返回响应。注意这个响应其实是由ForwardTo.jsp返回的,ForwardFrom.jsp向ForwardTo.jsp发出请求,并从ForwardTo.jsp捕获响应,18,客户端访问ForwardFrom.jsp的结果。在整个过程中,客户端完全不了解服务器端ForwardTo.jsp的存在。 完全是一种服务器端行为,19,2.3,概念 用来提供key/value 的信息,它通常与、和 一起搭配使用。 的语法 有两
9、个属性:name 和 的值就是parameter 的名称;而value 的值就是parameter 的值。 示例,20,参数规则 当使用或者时,被包含的网页或转向后的网页会先检查request对象里除了原本的参数值之外,有没有再增加新的参数值,如果有增加新的参数值时,则新的参数值在执行时,有较高的优先权。 例如: 一个request对象有一个参数A=foo;另一个参数A=bar是在转发时所传递的参数,则网页中的request的参数A=bar。注意:新的参数值有较高的优先权,21,2.4,概念 用于在浏览器中播放或显示一个对象(通常为Applet 或 Bean)。当JSP 网
10、页被编译后送往浏览器执行时,将会根据浏览器的版本替换成标签或者标签。一般来说,会指定对象Applet或Bean,同样也会指定类的名字和位置,另外还会指定将从哪里下载这个组件。 可以将params标签进行分组,然后传递参数 则作为的子元素出现。当不能启动Applet或Bean时,那么浏览器会有一段错误信息,22,课堂练习,1.将Include指令练习中的页面改为Include动作。 2.利用forword和param动作,进行参数的传递。 在一个JSP页面A1.JSP中传递两个参数“name”和“password”,值任意设定. 利用forword动作,将参数传递给A2.jsp.在A2.JSP页
11、面中进行参数获得 方法:参数值=request.getParameter(参数名)。之后,在 A2.JSP中使用if语句进行判断 当name为a,password为123时,显示登陆成功,否则显示登陆失败,23,1、JSP动作元素的概念 2、基本的JSP动作元素 3、页面复用技术,24,什么是页面的复用,在一个大型的Web应用程序中会有很多各式各样的页面,通常为了方便用户使用,相同性质的网页最好套用一致的外观风格,25,设计页面布局文件,常用的方法是:制作一个页面布局文件,利用标签将整个页面划分为四个区域,然后在每个区域插入一个HTML文件或JSP文件,由此组合出一个新的网页。例如:,26,在页面布局文件中插入其他页面,在JSP页面内包含其他JSP内容的方法有两种 使用JSP指令中的include指令 使用JSP动作中的include动作 无论使用哪种形式,都应注意的是:要加入的JSP文件或HTML文件中不应当包含、等标签,27,使用include指令,include指令是一种编译时的静态动作,只有当要包含的页面很少发生变化时才使用这种方法,因为当被包含的文件发生改变时不会引起包含文件JSP的重新编译。 例如,一个公司的商标和版权信息不是经常要发生变化的,就可以使用include指令进行包
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中药煎膏剂工发展趋势竞赛考核试卷含答案
- 地质采样工保密水平考核试卷含答案
- 乒乓球制作工创新思维测试考核试卷含答案
- 2026 年中职焊接技术(电阻焊技术)试题及答案
- 职业生涯规划师QC管理竞赛考核试卷含答案
- 雨课堂学堂在线学堂云中国古代建筑艺术湖大单元测试考核答案
- 2026春统编版(2024)小学道德与法治一年级下册《光荣的少先队》课时练习及答案
- 2025年秋浙美版小学美术四年级上册期末知识点复习卷及答案(三套)
- 中医“同病异治”在肿瘤个体化中的实践路径
- 2026年医疗数据使用协议
- 货币发展史课件
- 儿童体适能初级基础课程8
- 燃用生物质循环流化床锅炉生产项目节能评估报告(节能专)
- 心外科护理教学课件
- 2025年江苏省无锡市梁溪区中考二模语文试题含答案解析
- 电厂高压配电室管理制度
- 四年级上册数学脱式计算大全500题及答案
- 分位数因子增广混频分位数回归模型构建及应用研究
- T-HAAI 003-2024 数据资产 数据质量评价规范
- DB31∕T 310001-2020 船舶水污染物内河接收设施配置规范
- GB/T 44968-2024粮食储藏小麦粉安全储藏技术规范
评论
0/150
提交评论