JSP-标准动作

来源:互联网 发布:r软件使用指南 编辑:程序博客网 时间:2024/04/29 03:56


<jsp:useBean>:定义jsp页面使用一个JavaBean实例;

       <jsp:setProperty>:设置一个JavaBean中的属性值;

       <jsp:getProperty>:从JavaBean中获取一个属性值;

       <jsp:include>:在JSP页面包含一个外在文件;

       <jsp:forward>:把到达的请求转发另一个页面进行处理;

       <jsp:param>:用于传递参数值;

       <jsp:plugin>:用于指定在客户浏览器中插入插件的属性;

       <jsp:params>:用于向HTML页面的插件传递参数值;

       <jsp:fallback>:指定如何处理客户端不支持插件运行的情况;

JSP标准动作介绍

       在该jsp页面被翻译成Servlet源代码的过程中,当容器遇到标准动作元素时,就调用与之相对应的Servlet类方法来代替它,所有标准动作元素的前面都有一个JSP前缀作为标记,一般形式如下:

       <jsp:标记名… 属性…/>

有些标准动作中间还包含一个体,即一个标准动作元素中又包含了其他标准动作元素或者其他内容,包括体的标准动作的使用格式如下:

       <jsp:标记名…属性…>

              <jsp:标记名…属性以及参数…/>

       </jsp:标记名>

根据各个标准动作的功能,可以将这些标准动作分成以下6组:

1.       jsp中使用到JavaBean的标准动作:<jsp:useBean>定义使用一个JaveBean实例,ID属性定义了实例名称;<jsp:getProperty>从一个JavaBean中获取一个属性值,并将其添加到响应中;<jsp:setProperty>设置一个JavaBean中的属性值;

2.       在jsp中包含其他jsp文件或者web资源的标准动作:<jsp:include>在请求处理阶段包含来自一个Servlet或者jsp文件的响应,注意与include指令的不同;

3.       将到达的请求转发给另外一个jsp页面或者web资源以便进一步的操作的标准动作:<jsp:forward>将某个请求的处理转发到另一个Servlet或者jsp页面;

4.       在其他标准动作的中间指定参数的标准动作:<jsp:param>对使用<jsp:include>或者<jsp:forward>传递到另外一个Servlet或者jsp页面的请求添加一个传递参数值;

5.       在客户端的页面嵌入java对象(例如applet,是运行在客户端的小java程序)的标准动作:<jsp:plugin>根据浏览器类型为java插件生成Object或者Embed标记;<jsp:params>;<jsp:fallback>;

6.       仅仅用于标记文件的标准动作:                                    

<jsp:attribute>;<jsp:body>;<jsp:invoke>;<jsp:dobody>;<jsp:element>;<jsp:text>;<jsp:output>.

<jsp: 标记名…   属性…/>

比较与网页中的其它标记的不同:<body></body>

前缀:jsp, 表示这种标记为jsp内置标记,由jsp容器解释执行

 

JavaBean是一个可重复使用的软件组件。实际上JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象

n  优点

可重用组件   可在多个应用中使用

n  useBean有如下属性

id:实例名  class:引用的java类

type:实现的java接口  scope:作用域

<jsp:useBean id=“stu” scope=“request”class=“beans.Student” />

<%Student student =(Student)request.getAttribute(“stu”);%>

标准动作及属性

标准动作

属性

setProperty

name: javaBean的ID。

property: 设置属性名。

value: 属性对应的值(或param)---获取相关参数的值

value  与 param不可同时存在

getProperty

name:       javaBean的ID。

property:  获取值的属性名。

 

n  <jsp:setProperty name=“beanId”property=“age” value=“1” />

n  <jsp:setProperty name=“beanId”property=“age” param=“age” />

n  特殊用法:

¨  如果property的值是“*”,value无需配置。

¨  表示所有名字和Bean属性名字匹配的请求参数都将被传递给相应的属性set方法。

include动作

<jsp:include>标准动作是一个请求时动作,在调用JSP中,会在该标记所在位置包含另一个JSP的输出

jsp:include动作和include指令之间的根本性的不同在于它们被调用的时间。jsp:include动作在请求期间被激活,而include指令在页面转换期间被激活。两者之间的差异决定着它们在使用上的区别。使用include指令的页面要比使用jsp:include动作的页面难于维护。

forward动作

n  设计基于Web的系统时,通常需要在不同JSP之间传递控制。例如,访问一个电子商务网站的顾客可能想下一个订单。不过,如果这个顾客还没有注册该系统的话,购物车可能需要把控制转移给完成注册的JSP表单。

<jsp:forward page=“…url…” />