Struts bean

bean标签库中的标签分为3类:
 1、用于访问HTTP请求信息或JSP隐含对象的Bean 标签。
      a、<bean:header>标签:
        该标签用于检索HTTP请求中的Header信息,它具有以下属性:
         id  属性:定义一个java.lang.string类型的变量,这个变量存放在page范围内。
   name 属性:指定需要检索的Header 信息。
   如:<bean:header id="lang" name="Accept-Language"/>
         <bean:write neme="lang"/>输出lang得到的信息。
     b、<bean:parameter>标签,用于检索HTTP请求参数
        
id属性:定义一个java.lang.string类型的变量,这个变量存放在page范围内
        name属性:指定请求参数名
      value属性:指定请求参数的默认值。

       例子<bean:parameter id="kk" name="tesarg" value="noarg"/>               
       
        定义了一个名为 kk 的字符串类型变量,默认值为 noarg,如果请求URL不包含
     “tesarg”请求参数,如
http://localhost:8080/beanaceio/kkka.jsp  那么, kk 变量          的值为 noarg。

       例子:包含请求参数 tesarg 的URL
        如
http://loalhost:8080/beanweb/kka.jsp?tesarg=111&tesarg=222&tesarg=33
        那么:这时 kk 的值为第一个 “tesarg” 请求参数的值 111。
       如果希望检索出所有和参数名匹配的请求参数,应设置<bean:parameter>标签
       的 multiple 属性(可以设置为任意一个字符串),此时 id 属性定义的变量不再
       是 String 类型,而是字符串数组类型,用于存放所有和 name 属性匹配的请求
       参数值。
  
       <bean:parameter id="kk" multiple = "yes" name = "testarg" value = "noarg"/>
        输出:
        <%  for (int i=0;i < kk.length; i++){
                      out.write( kk[i] );  
          } %>

        c、<bean:cookie> 标签:

         <bean:cookie id="cookie" name="cookiename"  value="firstvalue"/>
          id  属性定义一个javax.servlet.http.Cookie;
          name  指定 Cookie 的名字;
          value   指定 Cookie 的默认值,如果由name 属性指定的 Cookie 不存在,就
      使用 value 属性指定的默认值。

        d、<bean:page>  标签:
   <bean:page>标签用于检索 jsp 隐含对象,如session、request和             response等。
        id 属性:定义一个引用隐含对象的变量,这个变量存放在page范围内。
        property 属性:指定隐含对象的名字,包括application、config、request、
                                 response 和 session。
        
<bean:page id="this_session" property="session"/>
        
       
 2、用于访问Web应用资源的Bean标签。
        <bean:message>标签:
   用于输出 Resource Bundle 中的一条消息。
  bundle 属性:指定 Resource Bundle, 他和 Struts 配置文件的
                             <message-resource>元素的 key 属性匹配。
         如果没有设置 bundle 属性,就采用默认的Resource Bundle.
      在 struts 配置文件中配置了俩个 Resource Bundle。如下:
<message-resources parameter="ApplicationResources"/>(没有指定 key属性,因此是默认的 Resource Bundle 他的资源文件为   ApplicationResources.properties)

 <message-resources parameter="SpecialResources"  key="special"/>,指定key属性为 “special”,他的资源文件为 SpecialResources.properties.

  <bean:message>标签中指定消息key有三种方式:

    a:<bean:message bundle="special"    key = "hello"/>,使用key属性直接指定消息
  key;指的就是,从struts配置文件中查找 key 值为 specia 的Resource Bundle属性   文件,再在该配置属性文件中查找 值 “hello”对应的 相关培植。
 
    b 、方式二:
    
    name属性指定一个可以转化为字符串的变量,这个变量的字符串值为消息 key,  
      <% reqeust.setAttribute("stringBean","hello");%>
      <bean:message bundle="special" name="stringBean"/>

   c、方式三:

     同时指定<bean:message>标签的name 属性和 property 属性。name属性指定
   一个javabean,property属性指定 javabean 的一个属性,这个javabean的属性
   的值就是消息key。
  <% SomeBean bean = new SomeBean();
           bean.setName("hello");
           request.setAttribute("someBean",bean);
      %>
     <bean:message bundle="special" name="someBean" property="name"/> 

     <bean:resource>标签:用于检索 web 资源的内容。
      例子:<bean:resource id=resource" name="/testpage.jsp" />,resource变量
   为字符串类型,他的值为 testpage.jsp 的源文件内容。
      id 属性: 定义一个代表 Web 资源的变量。
      name 属性:指定web 资源的路径;
      input 属性:如果没有设置input属性,则id属性定义的变量为字符串类型:如果
  指定 input 属性(可以是任意字符串),则id属性定义的变量为java.io.InputStream
  类型;

    <bean:struts>标签
    用于检索struts框架内在的对象,如 ActionFormBean、ActionForward 或者
 ActionMapping,<bean:struts> 标签的id属性定义一个 page 范围的变量,用
   来引用 Struts框架的内在对象,必须设置 formbean,forward和mapping属性中的
 一个属性,来指定被引用的 Struts 内在对象。
 a、formbean属性:指定 ActionFormBean 对象,和Struts 配置文件的<form-bean>
  元素匹配。
 b、forward 属性:指定 ActionForward 对象,和struts培植文件中<global-forwards>元素的<forward>子元素匹配。
 c、mapping 属性:指定 ActonMapping 对象,和Struts 配置文件的<action>元素匹配。
    <bean:struts id="kaka"   forward="BeanResource"/>定义了一个名为“kaka”的
  变量,他引用一个名为“BeanResource”的 ActionForward 对象,在struts配置
  文件中,与之匹配的<forward>元素:
  <global-forwards>
      <forward name="BeanResource"     path="/BeanResource.jsp"/>
   </global-forwards>
    
 3、用于定义或输出JavaBean  的 Bean 标签。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值