在jstl里面有fn:contains(str,str)这样的方法来判断字符串是否包含另一个字符串,可是没有判断list是否包含string的方法,所以就自己写了一个方法
contains.tag:
<%@tagimport="java.util.List"%>
<%@tagimport="org.apache.commons.lang3.StringUtils"%>
<%@tagimport="java.util.Arrays"%>
<%@tagpageEncoding="UTF-8"%>
<%@attributename="srcStr"type="java.lang.String"required="true"%>
<%@attributename="separatorChars"type="java.lang.String"required="false"%>
<%@attributename="str"type="java.lang.String"required="true"%>
<%
StringsepChars=separatorChars==null?"-":separatorChars;
String[]splitChars=StringUtils.split(srcStr,sepChars);
List<String>list=Arrays.asList(splitChars);
if(list.contains(str))
{%>
<jsp:doBody/>
<%}
%>
然后在需要使用的这个方法的页面上加上一句:
<%@taglibprefix="gms"tagdir="/WEB-INF/tags"%>
这样就可以直接使用
<gms:containssrcStr="${srcStr}"str="${str}">str</gms:contains>
这样子就可以判断了。
|