JSP--行为(Action)

来源:互联网 发布:网络教育 同济大学 编辑:程序博客网 时间:2024/06/05 16:34

Action指在运行期间的命令(不同于directive作用于编译期间)

常见的Action指令有:

jsp:useBean

--jsp:setProperty

--jsp:getProperty

jsp:include

--jsp:param

jsp:forward

--jsp:param

1、jsp:include

用于动态的包含JSP程序或HTML文件

除非这个指令被执行到,否则不会被Tomcat等JSP Engine编译

格式:

<span style="font-size:14px;"><jsp:include page="URLSpec" flush="true"/><--flush属性一般默认为true,意思是马上把指定的页面显示出来--><jsp:include page="URLSpec" flush="true"><jsp:param name="ParamName" value="ParamValue"/></jsp:include></span>
<jsp:param />用来指定include的page的参数及对应的值

与编译指令include的区别:

  include编译指令是在JSP程序的转换时期就将file属性所指定的内容嵌入,然后再执行编译;而Action中的include指令在转换时期是不会被编译的,只有客户端请求时如果被执行到才会被动态的编译载入

  <%@include>不能带参数,而<jsp:include>可以携带参数


2、jsp:forward

<jsp:forward>标签从一个JSP文件向另一个文件传递一个包含用户请求的request对象.<jsp:forward>标签以下的代码,将不能执行

<span style="font-size:14px;"><jsp:forward page="relativeURL"/><jsp:forward page="relativeURL" >       <jsp:param name="parameterName" value="parameterValue" /></jsp:forward></span>

jsp:forward 与 response,sendRedirect不同之出:

--jsp:forward,当前页面与被forward的页面公用同一个request

--response,sendRedirect,当前页面与被转到的页面是不同的request


3、jsp:useBean

通过jsp:useBean,可以在JSP中使用定义好的Bean

Bean的基本要素:

--必须有一个不带参数的构造器,JSP在创建Bean的时候会调用

--应该没有任何的公共实例变量

--通过getter/setter方法来读/写变量,并且将变量的首字母改为大写

基本用法:

--<jsp:useBean id="beanName" scope="page|request|session|application" class="package.BeanClass" type="typeName"/>

   scope用来设定变量的有效范围:page即当前页面有效,request指同一个request有效,session指同一次会话内有效,application相当于servletContext。默认为page

   type可以用来实现复用(父类引用指向子类对象)

   --<jsp:useBean id="sBean" class="bean.simpleBean"/>

相当于java中的 

<span style="font-size:14px;">bean.simpleBean sBean = new bean.simpleBean();</span>

   --<jsp:useBean id="sBean" scope="request" class="bean.simpleBean"/>

相当于java中的

<span style="font-size:14px;">bean.simpleBean sBean = (simpleBean) request.getAttribute("sBean")if(sBean == null){    sBean = new bean.simpleBean();    request.setAttribute("sBean",sBean)}</span>

--<jsp:useBean>

<jsp:setProperty  name="beanName" property="变量名" value=" "/>

<jsp:setProperty  name="beanName" property="变量名"param=" "/>

<jsp:getProperty  name="beanName" property="变量名"/>

   </jsp:useBean>


0 0
原创粉丝点击