---Struts2bean标签---

 

Struts2标签:

bean:

用来处理属性范围中的属性,可以对其进行复制、添加和显示,并可以完成国际化功能

 

logic:

用来完成页面上的逻辑判断和迭代循环

 

html:

用来替代html页面元素的标签

 

1)<bean: define>标签:  用来创建或复制一个属性范围中的属性

ex:

<bean:define id="username"  value="Candy"></bean:define>

 

<%

  pageContext.setAttribute("username","Candy");

%>

 

${username}

上面两句代码的功能是一样的

注意:

bean:define中的属性:

id表示新建立的属性范围中的名称,自行定义,如果有重复,则自动覆盖

value:  表示新建立的属性的值,只能是字符串(只要是value,就是新建-添加的

 

2) <bean:define id=“myusername” name="username"  scope="page"  toScope="session">

</bean:define>

${myusername}

想复制属性,就替代value,加name属性

name: 表示所有复制的属性范围中的名称,与value不能同时使用

 

scope: 表示所要复制的属性所在的属性范围,如果不填写,默认是四种属性范围

toScope:

表示复制后的新的属性所保存的属性范围,如果不填写,默认是page范围。

 

*如果属性范围中保存的是一个对象,想复制该对象的一个属性

<%

   Person p = new Persion();

  p.setUsername("MLDN");

  p.setPassword("123");

  p.setAge(12);

  p.setBirthday(new java.io.uti.Date());

 pageContext.setAttribute("person",p);  --保存对象

%>

3) <bean:define id="mydate"  name="person"  property="birthday" scope="page"  toScope="session">  获取对象属性

${mydate}

property: 表示所复制的属性其中包含的子属性的名称

 

4) <bean:size> :  讲一个属性范围中的集合对象的size取得并设置到属性范围中

<bean:size id="mysize" name="all" scope="page">    size==只是仅仅指页面  all  ===集合的name值

</bean:size>

 

5)

<bean:include>:

讲一个页面中的所有代码保存到属性文件中

<bean:include id="myinclude" page="/suc.jsp"/>

 

id:   所包含的页面在属性范围中保存的名称

page: 所要包含的页面路径,注意需要加"/"

 

6)

<bean:write>

<%

   request.setAttribute(" myname","<font coor='red'>aaa</font> ")

%>

bean:write   <bean:write name="myname" filter=“true” scope="request" />

el: ${myname}

 

通过以上代码可以发现,

el表达式显示数据时会直接将html代码进行编译处理

bean:write默认会直接将html代码显示到页面上

 

bean:write 可以通过filter属性来控制是否将html进行编译

filter为true表示不进行编译直接显示,默认为true

如果为false,则与el处理方式相同

 

 

bean:write还可以对日期和数字进行格式化显示

日期:如果要显示yyyy-MM-dd 格式

<bean:write name="myname" format="yyyy-MM-dd" scope="request" />

formate属性中格式的处理与SimpleDateFormat一样

 

数字格式化

<%

request.setAttribute("mymoney",562344.54);

%>

<bean:write name="mymoney" format="#,##0.00" scope="request"/>

${mymoney}

 

#和0都表示一位数字,这里="#,##0.00表示显示格式为:3位数字,3位数字,2位数字

#和0的区别,如果该位不存在时,如果使用#号,则不会显示该位,如果使用0,则会自动补0

 

可以对数字和日期格式进行统一的管理,在资源文件中加入以下配置:

org.apache.struts.taglib.bean.format.date = yyyy-MM-dd

(java.util.Date)

 

org.apache.struts.taglib.bean.format.int  = #,##0.00

(byte short integer)

org.apache.struts.taglib.bean.format.float = #,##0.00

(-->float, double, bigDecimal)

完成以上配置,当属性范围出现日期或数字时,会自动按照配置的格式来显示,必须用<bean:write>

如果同时使用了统一的格式和单独编写的format格式,会按照单独编写的格式进行处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值