struts1标签bean:define使用

 

<bean:define />

 属性 描述         
  id 代码段变量的名字,通过它可以访问新定义的bean。这个属性是必需的         
  type 为引入的代码段变量定义类         
  value 给由id属性定义的代码段变量指定新对象         
  name 目标bean的名字,如果没有指定value属性,这个属性是必须的         
  property 由name属性定义的bean的属性名字,它用于定义新bean。如果没有指定,由name属性定义的bean分配给由id属性指定的代码段变量         
  scope 源bean的范围。如果没有指定,就在从页面范围到应用程序范围之间查找         
  toScope 目标bean的范围,如果没有指定,就默认为page范围   



bean:define:有三个用途。
一是定义新字符串常量:
<bean:define id="foo" value="This is a new String"/>
<bean:define id="bar" value='<%= "Hello, " + user.getName() %>'/>
<bean:define id="last" scope="session" value='<%= request.getRequestURI() %>'/>

        
二是复制一个现有的bean给新的bean:
<bean:define id="foo" name="bar"/>    // 将名字为bar的JavaBean赋值给foo
<bean:define id="baz" name="bop" type="com.mycompany.MyClass"/> // 额外定义脚本变量的类型,默认为Object
        
三是复制一个现有的bean的属性给新的bean:
<bean:define id="bop" name="user" property="role[3].name"/>
<bean:define id="foo" name="bar" property="baz" scope="request" toScope="session"/> 
//toScope属性指新bean的scope,默认为page   
上段代码的意思是把名为bar的bean的baz属性赋值给foo,foo的类型为String(默认)。

 例:   
      我有一个Bean对象User对象,这个里面保存了admin管理员的个人信息,姓名(name),性别(sex)、年龄(age)那么怎么用呢。   
  在action里面你可以把User对象传过来   
  request.setAttribute("user",User);   
  在页面   
  <bean:define   id="admin"   name="user"./>   
  然后就可以和bean:write搭配使用   
  <bean:write   name="admin"   property="name"/>   
  <bean:write   name="admin"   property="sex"/>   
  <bean:write   name="admin"   property="age"/>





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值