表達式語言除了可以使用基本的運算符外,還可以使用自定義函數。通過使用自定義函數,加強了表達式語言的功能。
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>
顯示結果