问题:在数据显示的时候经常需要调用一些方法对需要显示的数据进行基本的处理,如:
数据过滤、求子串等操作。那么就需要使用EL表达式进行快速的函数调用。
2.1 在WEB-INF中创建一个myfun.tld文件
1 <?xml version="1.0" encoding="UTF-8"?> 2 <taglib xmlns="http://java.sun.com/xml/ns/j2ee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" 5 version="2.0"> 6 <tlib-version>1.0</tlib-version> 7 <short-name>jnb</short-name> 8 <function> 9 <name>filter</name> 10 <function-class>cn.itcast.utils.HTMLFilter</function-class> 11 <function-signature>java.lang.String filter(java.lang.String)</function-signature> 12 </function> 13 </taglib>
类 cn.itcast.utils.HTMLFilter
1 public final class HTMLFilter { 2 public static String filter(String message) { 3 if (message == null) 4 return (null); 5 char content[] = new char[message.length()]; 6 message.getChars(0, message.length(), content, 0); 7 StringBuffer result = new StringBuffer(content.length + 50); 8 for (int i = 0; i < content.length; i++) { 9 switch (content[i]) { 10 case ‘<‘: 11 result.append("<"); 12 break; 13 case ‘>‘: 14 result.append(">"); 15 break; 16 case ‘&‘: 17 result.append("&"); 18 break; 19 case ‘"‘: 20 result.append("""); 21 break; 22 default: 23 result.append(content[i]); 24 } 25 } 26 return (result.toString()); 27 28 } 29 }
1.2 引入函数库
%@taglib uri="/WEB-INF/myfuns.tld" prefix="jnb"%
1.3 使用EL调用函数
<td>${jnb:filter(entry.value.info)}</td>
注意:
原文:http://www.cnblogs.com/friends-wf/p/3735097.html