随笔 - 26  文章 - 2  trackbacks - 0
<2011年10月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用链接

留言簿

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

一、include动作指令

 

<jsp:include>标签表示包含一个静态的或者动态的文件。

语法:
            <jsp:include page="文件路径" flush="true" />
            或者
            <jsp:include page="path" flush="true">
               <jsp:param name="参数名1" value="参数1值" />

           ...............

           <jsp:param name="参数名n" value="参数n值" />
            </jsp:include>

注:

1、flush="true" 必须使用flush为true,它默认值是false。

2、<jsp:param>子句能让你传递一个或多个参数给动态文件,也可在一个页面中使用多个<jsp:param>来传递多个参数给动态文件。

 

二、forward动作指令

 

<jsp:forward>标签从一个JSP文件向另一个文件传递包含用户请求的request对象。

语法:
            <jsp:forward page="文件路径" />
            或者
            <jsp:forward page="文件路径">
               <jsp:param name="参数名1" value="参数1值" />

            ...............

           <jsp:param name="参数名n" value="参数n值" />

        </jsp:forward>

 

三、useBean动作指令

 

<jsp:useBean>标签表示用来在JSP页面中创建一个BEAN实例并指定它的名字以及作用范围。

语法:
<jsp:useBean id="name" scope="page | request | session | application" typeSpec />
其中typeSpec有以下几种可能的情况:
class="包名.类名" | class="包名.类名" type="typeName" | beanName="包名.类名" type="typeName"

 

在JSP中使用bean,class属性必须使用完全限定类名——包括包名的类名。不管你是否使用<%@ page import ...%>输入包,都要满足这个要求。

 

<jsp:useBean id=”book” class=”core.Book”/> 等价于 <%core.Book book=new core.Book();%>

仅当找不到相同id和scope的bean时,jsp:useBean元素才会实例化新的bean。如果存在相同id和scope的bean,则只是将已有的bean绑定到相关的变量(由id指定)。

我们可以不使用  <jsp:useBean…/>

转而使用        <jsp:useBean>statements</jsp:useBean>

使用第二种形式的意义在于,jsp:useBean的起始标签和结束标签之间的语句只是在创建新的bean时执行,如果使用已有的bean,则不执行。

 

四、getProperty动作指令

 

<jsp:getProperty>标签表示获取BEAN的属性的值并将之转化为一个字符串,然后将其插入到输出的页面中。

语法:
<jsp:getProperty name="bean的名称" property="属性名称" />

注:
1、在使用<jsp:getProperty>之前,必须用<jsp:useBean>来创建它。
2、不能使用<jsp:getProperty>来检索一个已经被索引了的属性。
3、能够和JavaBeans组件一起使用<jsp:getProperty>,但是不能与Enterprise Java Bean一起使用。

 

五、setProperty动作指令

 

<jsp:setProperty>标签表示用来设置Bean中的属性值。

四种语法格式:

<jsp:setProperty name="bean的名称" property="*" />

<jsp:setProperty name="bean的名称" property="属性名称"/>

<jsp:setProperty name="bean的名称" property="属性名称" param="参数值" />

<jsp:setProperty name="bean的名称" property="属性名称" value="属性值" />

第一种语法格式中,property="*",应用这种格式要求bean属性的名字与类型要和request对象中参数名称与类型一致,一次用bean中的属性来接收客户输入的数据,系统会根据名称来自动匹配。

第二种语法格式则指设置其中匹配的一个bean的属性。

第三种语法格式根据制定的request对象中的参数与属性匹配。

第四种语法格式用来给bean的属性赋值,属性值的数据类型要与属性的数据类型一致,否则会出错。字符串转换为其他数据类型的函数分别为:

转换为boolean  Boolean.valueof(String str).booleanValue()

转换为byte     Byte.valueof(String str).byteValue()

转换为char     Character.valueof(String str).charValue()

转换为double   Double.valueof(String str).doubleValue()

转换为float    Float.valueof(String str).floatValue()

转换为int      Integer.valueof(String str).intValue()

转换为long     Long.valueof(String str).longValue()

注:使用 jsp:setProperty 来为一个Bean的属性赋值;可以使用两种方式来实现。
    1、在jsp:useBean后使用jsp:setProperty:
      <jsp:useBean id="myUser" … />
      
      <jsp:setProperty name="user" property="user" … />
      在这种方式中,jsp:setProperty将被执行。
    2、jsp:setProperty出现在jsp:useBean标签内:
      <jsp:useBean id="myUser" … >
      
      <jsp:setProperty name="user" property="user" … />
      </jsp:useBean>
     在这种方式中,jsp:setProperty只会在新的对象被实例化时才将被执行。

在同一个setProperty动作指令中不能同时存在param和value参数。

 

六、plugin动作指令

 

这个动作指令用来在JSP中加载Java applet小程序。用<applet></applet>也可以是客户端下载并运行Java applet小程序,但有的浏览器不支持,如果Java applet小程序使用了这样的类,将无法执行。用plugin动作指令可以较好的解决这个问题。

语法:
<jsp:plugin 
      type="applet" 
      code="小程序的类文件" 
      codebase="小程序所在的位置" 
      [ height="小程序显示高度" ] 
      [ width="小程序显示宽度" ] 
      [ jreversion="虚拟机版本号" ] 
      [ <jsp:params> 
         [ <jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" /> ]+ 
      </jsp:params> ] 
      [ <jsp:fallback> 客户端浏览器是否支持插件下载的提示信息</jsp:fallback> ]
</jsp:plugin>

注:

code参数是指小程序经过编译后的字节码文件,扩展名为.class。

codebase参数值出这个字解码文件所在的位置,可以是相对路径也可以是绝对路径,但在这个参数中不需要文件名,只需要目录路径就可以了,如果自己吗文件与调用的jsp文件在同一目录下,则此参数可以省略。

posted on 2011-10-09 17:08 Java_liyadong 阅读(1033) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: