struts的bean标签(二)

来源:互联网 发布:解封电脑机器码软件 编辑:程序博客网 时间:2024/05/21 01:55
一、 访问HTTP请求信息或JSP隐含对象

 
  1、<bean:header>标签:

         该标签用于从HTTP请求中提取Header信息,示例如下:

         <bean:header id="lang" name="Accept-Language"/>

         提取的信息是:<bean:writename="lang"/>

         解释:将请求Header中的Accept-Language属性存储到page范围内的变量Language中!然后输出!

   2、<bean:parameter>标签:

         该标签用于检索请求参数,示例如下:

         <bean:parameter id="uid"  name="userid" value="默认值" multiple="yes"/>

         解释:将name属性指定的参数值存储到id属性指定的变量中,如果不存在这样的参数,那么采取value属性指定的默认值!对于multiple属性它是用于检索所有同名参数,此时id属性指定的变量不再为String类型,而是String[]类型!注意multiple属性值只需指定任意字符串,不一定要yes!

   3、<bean:cookie>标签:

        该标签用于访问客户端的 Cookie 信息,示例如下:

       <bean:cookie id="cookie"  name="cookie的名字" value="默认值"  multiple="yes"/>

       解释:将name属性指定的cookie值存储到id属性指定名称的javax.servlet.http.Cookie类型变量中,如果不存在这样的参数,那么采取value属性指定的默认值!        对于multiple属性它是用于检索所有同名参数,此时id属性指定的变量不再为javax.servlet.http.Cookie类型,而是javax.servlet.http.Cookie[]类型!注意multiple属性值只需指定任意字符串,不一定要yes!注意cookie是以name/value的形式存在的!

   4、<bean:page>标签:

       该标签用于引用JSP的隐含对象,这些对象包含Session,config,request,Response,Application五个隐含对象!示例如下:

      <bean:page id="this_session"  name="session"/>

     session范围内存储的userid属性值为:<bean:write name="this_session" property="userid">

     解释:首先将session引入到page范围内的this_session变量中,此时this_session为session类型的变量!接下来用标签输出session中的userid属性!

------------------------------------------

二、访问WEB应用资源

  1、<bean:message>标签:

       该标签的使用非常广泛,用于显示资源文件中的信息,示例如下:

       a、  <bean:message bundle="资源文件代号" key="资源文件中的key"/>

              解释:显示bundle属性指定的资源文件的key属性所代表的字符串,这是最常用的!

       b、  <bean:message bundle="资源文件代号"  name="变量名"/>

              解释:将name属性指定的变量值作为bundle属性指定的资源文件的key,显示key代表的字符串!

       c、  <bean:message bundle="资源文件代号" name="javaBean变量" property="bean的属性"/>

              解释:将name属性指定的Bean中的property属性的值作为bundle指定的资源文件的key,输出key所代表的字符串!

      d、 <bean:message bundle="资源文件代号"  key="资源文件中的key" arg0="第一个参数值"/>

              解释:在资源文件中需要参数的时候就采用这种方式传递参数,如果有N个参数那就按照argN一直传递下去!
key=“”此处到messages.properties文件中找。在struts-config.xml中
<message-resources parameter="Messages"null="false"/>
意义为寻找Messages开头的properties文件。

  2、<bean:resource>标签:

      该标签是表示把指定的web资源装载到一个JavaBan中,示例如下:

     <bean:resource id="resource"  input="yes" name="/index.jsp"/>

     解释:以上代码是将index.jsp文件以inputStream的形式保存在id指定的变量中!注意如果不设置input属性,那么id属性指定的变量为字符串类型,他保存的是index.jsp的内容!另外input属性可以设置任意值!个人觉得这个标签的作用不大,在调试的时候可以使用!

  3、<bean:struts>标签:

    该标签用于检索struts框架内在的对象,示例如下:

    <bean:struts id=""  forward=""/>

    解释:该标签使用不是很广泛,需要时再查询!

  4、<bean:include>标签:

    该标签使用不是很广泛,需要时再查询!

-----------------------------------------------------------------------------------------------------------

三、定义变量或输出

  1、<bean:define>标签:

    该标签用于定义一个变量,示例如下:

    a 、<bean:define id="name"  value="chenshan" />  

   解释:以上代码定义一个普通的字符串id属性指定变量的名称,value指定变量的值!以上标签等价于:Stringname="chenshan";

    b、<bean:define id="nm"  name="persionBean" property="userName"/>

   解释:以上代码定义一个nm变量,该变量的值是由name属性指定的已经存在的javabean的userName属性的值!所以name属性指定javabean,property指定bean的属性!

    c、<bean:define id="nm"  name="persionBean" type="javax.servlet.servletContext" />

   解释:以上代码定义了一个名为"nm"的变量,该变量引用已经存在的persionBean!注意,对于由name属性指定已经存在的javaBean,<bean:define>标签会依次从page、request、session、appliction范围内查找,此外也可以设置scop属性来明确指定这个已经存在的javaBean,这样<bean:define>标签就会在指定的范围内寻找JavaBean!

  2、<bean:size>标签:

       该标签用于计算Map、Collection或数组的长度,示例如下:

       <bean:size id="length"name="nameList"/>

       名称列表的长度是:<bean:write name="length"/>

       解释:略~~~

  3、<bean:write>标签:

       该标签的使用也是非常多的,它用于在网页上输出变量值和某个已经存在的Bean的属性值!示例如下:

       <%

            request.setAttribute("floatval",Float.valueOf("2.0123456"));

            Calendar gc=GregoriCalendar.getInstance();//定义一个时间类型的变量

            gc.setTime(new java.util.Date(session.getCreationTime()));

            request.setAttribute("now",gc);

       %>

       <bean:write name="floatval" format="#.###"/>

       解释:按照format指定的格式四舍五入显示数据!

       <bean:write name="now"  format="yyyy-mm--ddhh:mm:ss"/>

       解释:按照指定的时间格式输出时间!

       另外<bean:write>标签的filter属性也是非常重要的,他表示是否按照HTML格式编译输出的信息;默认值为true-不编译,如果设置为false,就表示要编译,那么将输出HTML标记类型的信息!


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lcj8/archive/2008/09/20/2956192.aspx

原创粉丝点击