1. 定义一个类
package functions;
public class Functions {
public Functions() {}
public static int lastIndexOf(String text, String searchString) {
return text.lastIndexOf(searchString);
}
}
2. 定义一个functions.tld:
<?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 web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>A tag library that defines a function.</description>
<tlib-version>1.0</tlib-version>
<short-name>FunctionTagLibrary</short-name>
<uri>/FunctionLibrary</uri>
<function>
<name>lastIndexOf</name>
<function-class>functions.Functions</function-class>
<function-signature>int lastIndexOf(java.lang.String, java.lang.String)</function-signature>
</function>
</taglib>
3. 在jsp里用这个function:
<%@ taglib uri="/WEB-INF/functions.tld" prefix="f" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
</head>
<body>
<c:set var="text" value="Hello.World!" />
<c:out value="${fn:substring(text, 0, f:lastIndexOf(text, '.'))}" />
</body>
</html>