struts1标签Logic使用举例

1.   logic:empty 
            该标签是用来判断是否为空的。如果为空,该标签体中嵌入的内容就会被处理。该标签用于以下情况:
          1)当Java对象为null时;
          2)当String对象为""时; 
          3)当java.util.Collection对象中的isEmpty()返回true时;
          4)当java.util.Map对象中的isEmpty()返回true时。
            eg. 
              < logic:empty   name="userList">   
                ...   
            </logic:empty> 
            该句等同于:
            if  (userList.isEmpty())    
                  ...   
             
    2.  logic:notEmpty
            该标签的应用正好和logic:empty标签相反,略。
    3. logic:equal
        该标签为等于比较符。
        eg1. 比较用户的状态属性是否1,若为1,输出"启用";
            < logic:equal   name="user"   property="state"   value="1">
            启用
          </logic:equal>
      eg2.如果上例中的value值是动态获得的,例如需要通过bean:write输出,因struts不支持标签嵌套,可采用EL来解决该问题。
            < logic:equal   name="charge"   property="num"   value="${business.num}">   
                      ......
          </logic:equal>
      4.logic:notEqual
            该标签意义与logic:equal相反,使用方法类似,略。
      5.logic:forward
            该标签用于实现页面导向,查找配置文件的全局forward。
            eg.< logic:forward name="index"/>
      6.logic:greaterEqual
            为大于等于比较符。
            eg.当某学生的成绩大于等于90时,输出“优秀”:
                <logic:greaterEqual name="student" property="score"value="90">
                    优秀
              </logic:greaterEqual> 
      7.logic:greaterThan
            此为大于比较符,使用方法同logic:greaterEqual,略;
      8.logic:lessEqual
            此为小于等于比较符,使用方法同logic:greaterEqual,略;
      9.logic:lessThan
            此为小于比较符,使用方法同logic:greaterEqual,略;
      10.logic:match
            此标签比较对象是否相等;
            eg1.检查在request范围内的name属性是否包含"amigo"串: 
              < logic:match name="name"scope="request" value="amigo">
                    < bean:writename="name"/>中有一个“amigo”串。
              </logic:match>
          eg2.检查在request范围内的name属性是否已“amigo”作为起始字符串:
            < logic:match name="name" scope="request"value="amigo" location="start">
                < bean:writename="name"/>以“amigo”作为起始字符串。
              </logic:match>
          eg3. 
              < logic:match header="user-agent"value="Windows">
                你运行的是Windows系统
              </logic:match>
      11.  logic:notMatch
            此标签用于比较对象是否不相同,与logic:match意义相反,使用方法类似,略。
      12.logic:messagePresent
            该标签用于判断ActionMessages/ActionErrors对象是否存在;
            eg.如果存在error信息,将其全部输出:
                <logic:messagePresentproperty="error"> 
                    < html:messages property="error"id="errMsg" > 
                          < bean:writename="errMsg"/> 
                    < /html:messages>   
                </logic:messagePresent >
      13.logic:messagesNotPresent
            该标签用于判断ActionMessages/ActionErrors对象是否不存在,使用方法与logic:messagePresent类似,略
        14. logic:present
            此标签用于判断request对象传递参数是否存在。
            eg1.user对象和它的name属性在request中都存在时,输出相应字符串:
                < logic:presentname="user" property="name">
                    user对象和该对象的name属性都存在
              </logic:present> 
            eg2.若有一个名字为“user”的JavaBean,输出对应字符串:
              < logic:present name="user">
                    有一个名字为“user”的JavaBean。
              </logic:present>
            eg3. 
              < logic:presentheader="user-agent">
                    we got a user-agent header.
              </logic:present>
        15. logic:notPresent
            此标签用于判断request对象传递参数是否不存在,意义与了logic:present相反,使用方法类似,略。
        16. logic:redirect
            该标签用于实现页面转向,可传递参数。
            eg1.< logic:redirecthref="http://www.chinaitlab.com"/>
         
        17. logic:iterator
              用于显示列表为collection的值(List,ArrayList,HashMap等)。
              eg1. 逐一输出用户列表(userlList)中用户的姓名:
                <logic:iterate   id="user"name="userList">
                    < bean:write name="user"property="name"/><br>
                </logic:iterate>
              eg2. 从用户列表中输出从1开始的两个用户的姓名
                <logic:iterate   id="user" name="userList"indexId="index"   offset="1"length="2">
                    < bean:writename="index"/>.< bean:writename="user" property="name"/><br>
                </logic:iterate>
              eg3. logic:iterator标签的嵌套举例
                  < logic:iterate id="user"indexId="index" name="userList">
                        < bean:write name="index"/>.< bean:write name="user"property="name"/><br>
                        < logic:iterate id="address" name="user"property="addressList" length="3" offset="1">
                            < bean:writename="address"/><br>
                        < /logic:iterate>
                </logic:iterate>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值