logic标签库

logic标签库

<logic:equal>变量等于指定的常量
<logic:notEqual>变量不等于指定的常量                                                   
<logic:lessThan>变量小于指定的常量
<logic:lessEqual>变量小于或者等于指定的常量
<logic:greaterThan>变量大于指定的常量
<logic:greaterEqual>变量大于或等于指定的常量
<logic:match>变量包含指定的常量字符串
<logic:match name="authorName" scope="request" value="Linda">
 <bean:write name="authorName">
</logic:match>
<logic:notMatch>变量不包含指定的常量字符串
<logic:empty>判断指定的变量是否为null,或者为空字符串""
<logic:notEmpty>判断指定的变量是否不为null,并且不为空字符串""
<logic:present>判断指定的安全角色,用户,Cookie,HTTP请求Header或JavaBean是否存在指定的对象
<logic:notPresent>判断指定的安全角色,用户,Cookie,HTTP请求Header或JavaBean是否不存在指定的对象                                                                         
<logic:messagesPresent>判断指定的消息是否存在
<logic:messagesNotPresent>判断指定的消息是否不存在

进行循环遍历Logic标签是Logic标签库中最复杂的标签,也是用途最广泛的标签,
它能够在一个循环中遍历数组,Collection,Enumeration,Irerator或者Map中的所有元素
=================
遍历集合
=================
 <logic:notEmpty property="userinfo" name="userInfoForm">
  <logic:iterate id="result" property="userinfo" name="userInfoForm" indexId="indexId">
   <html:multibox property="checkedID" name="userInfoForm" >
    <bean:write name="result" property="intid"/>
  </html:multibox>
  </<logic:iterate>
 </logic:notEmpty>
======================
遍历Map
======================
 HashMap map=new HashMap();
 map.put("member_id","001");  
 map.put("a_id","1001");
 request.setAttribute("map",map);
  <logic:iterate id="result"  name="map" indexId="ind">
   <bean:write name="ind" />
   <bean:write name="result" property="key" />
   <bean:write name="result" property="value" />
  </logic:iterate>

如果HashMap中每个元素的value是集合对象,则可以采用嵌套的<logic:interate>标签
遍历集合中的所有对象
  HashMap map=new HashMap();
  String [] a={"1","2"};
  String [] b={"3";"4"};
  map.put("a_id",a);
  map.put("b_id",b);
  <logic:iterate id="result"  name="map" indexId="ind">
   <bean:write name="ind" />
   <bean:write name="result" property="key" />
    <logic:iterate id="m_result"  name="result" property="value"
     length="2" offset="1" >
     <bean:write name="m_result" />
    </logic:iterate>
  </logic:iterate>
=====================
name属性指定需要进行遍历的集合对象,它每次从集合中检索出一个元素,然后存放在page范围内,
并以id属性指定这个字符串来命名这个元素,最好是在里面嵌套一个<bean:write>标签,把刚刚遍历的
第一个id指定的字符串输出,然后在循环在输出.length属性需要遍历的元素的数目,如果没有设置length属性,
就遍历集合中的所有元素.offset属性指定开始遍历的其实位置,默认值是0.indexId属性定义一个代表当前被
遍历元素的系列号,这个变量存放在page范围内,可以被<bean:write>标签访问输出输出的是int的数字.
例如1.2.3.4等.可以用户输出输出的元素的系列号

===================
最后研究一下进行请求转发和重定向的Logic标签
<logic:forward>标签用于请求转发,
它的name属性指定转发的目标,与Struts配置文件中的<global-forwards>元素和的子元素<forward>元素匹配.
简单的说就是<logic:forward>标签的name属性定义的值,要去找到<golbal-forwards>子元素<forward>元素
的匹配的name属性,然后通过path指定的路径进行转发.
<global-forwards>
 <forward name="index" path="/index.jsp">
 .......
</global-forwards>
<logic:forward name="index">
重定向用<logic:redierct>标签它的forward,href和page属性指定重定向的目标,这几个属性和<html:link>标签的
属性用法十分相似.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值