logic:match和logic:notMatch
比较两字符串是否相等,可以比较字符串的开始的、结尾的或其中的某个部分。
location属性:指定从某个位置开始进行比较。
其它的属性有:name、property、scope、value、cookie、header、parameter。
下面的例子是检查浏览器类型:
c:
检查名为"name"的请求参数是否是"xyz"的子字符串,但是子字符串必须从"xyz"的索引位置1开始(也就是说子字符串必须是"y"或"yz"):
比较两字符串是否相等,可以比较字符串的开始的、结尾的或其中的某个部分。
location属性:指定从某个位置开始进行比较。
其它的属性有:name、property、scope、value、cookie、header、parameter。
下面的例子是检查浏览器类型:
| <logic:match header="User-Agent" value="Mozilla"> Mozilla! </logic:match> <logic:notMatch header="User-Agent" value="Mozilla"> Not Mozilla :( </logic:notMatch> |
c:
| <logic:match name="bean" property="stringProperty" value="hello world"> Hello World! </logic:match> <logic:notMatch name="bean" property="stringProperty" value="hello world"> I'm so sad and lonely. </logic:notMatch> |
检查名为"name"的请求参数是否是"xyz"的子字符串,但是子字符串必须从"xyz"的索引位置1开始(也就是说子字符串必须是"y"或"yz"):
| <logic:match parameter="name" value="xyz" location="1"> The parameter name is a sub-string of the string xyz from index 1 </logic:match> |
看上面的说明感觉用起来并不难,但应该注意的一点是:
在<logic:match name="bean" property="stringProperty" value="hello world">
Hello World!
</logic:match>
中,需要先判断bean是否存在,否则会出现异常。
可以使用<logic:present name="bean" property="stringProperty"></logic:present>进行判断

本文介绍了Struts2中的逻辑标签logic:match和logic:notMatch的使用方法,这两个标签用于比较字符串是否相等,支持从特定位置开始比较。此外,还讲解了如何使用这些标签来检查浏览器类型及请求参数。
2270

被折叠的 条评论
为什么被折叠?



