1. ElFunction.java
package day15;
public class ElFunction {
/*
* 计算输入字符串的长度
*/
public static Integer getLength(String str){
return str.length();
}
/*
* 完成字符串的截取
*/
public static String subString(String str,Integer begin,Integer length){
return str.substring(begin, length);
}
}
2. elfunction.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>mytag l.0</description>
<!-- 标签库的概述 -->
<display-name>mytag core</display-name>
<!-- 标签库的版本 -->
<tlib-version>1.0</tlib-version>
<!-- 在jsp页面建议使用的标签前缀名 -->
<short-name>fen</short-name>
<!-- 定义该标签库的URI,给该tld文件的唯一标识 -->
<uri>http://www.challen.org/mytaglib</uri>
<!-- 配置函数 -->
<function>
<!-- 定义标签名,在Jsp页面中使用,是标签的唯一名称,在整个tld文件中唯一 -->
<name>getLength</name>
<!-- 定义标签处理类 -->
<function-class>day15.ElFunction</function-class>
<!-- 配置函数的签名 格式:返回类型 函数名(参数1,参数2) -->
<function-signature>java.lang.Integer getLength(java.lang.String)</function-signature>
</function>
<!-- 配置函数 -->
<function>
<!-- 定义标签名,在Jsp页面中使用,是标签的唯一名称,在整个tld文件中唯一 -->
<name>subString</name>
<!-- 定义标签处理类 -->
<function-class>day15.ElFunction</function-class>
<!-- 配置函数的签名 格式:返回类型 函数名(参数1,参数2) -->
<function-signature>java.lang.String subString(java.lang.String,java.lang.Integer,java.lang.Integer)</function-signature>
</function>
</taglib>
3. elJsp.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://www.challen.org/mytaglib" prefix="fen"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<title>Jsp_ELFunction</title>
</head>
<body>
测试字符串长度 ${fen:getLength("abcdef") }<br/><br/>
完成字符串的截取${fen:subString("abcdef",1,3) }
</body>
</html>