EL表达式自定义函数
表达式语言除了可以使用基本的运算符外,还可以使用自定义函数。通过使用自定义函数,加强了表达式语言的功能。
EL表达式函数,主要功能是完成对数据的修改,统一化格式;
步骤
1.开发函数处理类,处理类就是普通的类;每个函数对应类中的一个静态方法;
2. 建立TLD文件,定义表达式函数;
3.在JSP页面内导入并且使用;
1.开发函数处理类
package com.itnba.maya.zidingyi; public class Zidingyi { public static String zhuanhuan(String txt){ txt=txt.replaceAll("&", "&").replaceAll("\"", """).replaceAll("<", "<").replaceAll(">", ">"); txt=txt.replaceAll("/n", "</p><p>"); txt="<p>"+txt+"</p>"; return txt; } }
2.创建配置TLD文件
创建在WEB-INF文件夹里面
配置
<?xml version="1.0" encoding="UTF-8"?> <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0"> <description>自定义函数</description> <display-name>我的el function</display-name> <tlib-version>1.0</tlib-version> <short-name>fn</short-name> <uri>http://www.itnba.com</uri> <function> <description> 把文本的显示内容改成网页的显示内容 </description> <name>zhuanhuan</name> <function-class>com.itnba.maya.zidingyi.Zidingyi</function-class> <function-signature>String zhuanhuan(java.lang.String)</function-signature> <example> ... </example> </function> </taglib>
3.在JSP页面内导入并且使用
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="my" uri="http://www.itnba.com" %> <%--调用 --%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <h1>aa</h1> ${my:zhuanhuan("<h1>aa</h1>") } </body> </html>
显示结果