浏览 4400 次
锁定老帖子 主题:自定义JSTL标签函数,方便开发使用
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-25
以下通过显示省份来看实现步骤: 第一步:新建一个类如下: UtilFunction.java package demo; import java.util.ArrayList; import java.util.List; // 测试 // 自定义JSTL函数 public class UtilFunction { // 获取省份 public static List getProvinces() { List provinces = new ArrayList(); // 暂时添加几个测试 provinces.add("广东省"); provinces.add("广西省"); provinces.add("山东省"); provinces.add("四川省"); provinces.add("江西省"); return provinces; } } 第二步:编写tld标签函数注册文件 myfunctions.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 http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0"> <tlib-version>1.0</tlib-version> <short-name>my</short-name> <uri>http://www.changtusoft.cn/test/functions</uri> <!-- JSTL自定义函数 获取省份 --> <function> <name>getProvinces</name> <function-class>demo.UtilFunction</function-class> <function-signature>java.util.List getProvinces()</function-signature> </function> </taglib> 第三步:在web.xml文件中注册tld <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- 注册JSTL函数 --> <jsp-config> <taglib> <taglib-uri>http://www.changtusoft.cn/test/functions</taglib-uri> <taglib-location>/WEB-INF/myfunctions.tld</taglib-location> </taglib> </jsp-config> </web-app> 第四步:编写jsp进行测试 index.jsp <%@ page language="java" import="java.util.*" pageEncoding="gbk"%> <!-- 导入jstl标签库 --> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!-- 导入自定义jstl函数 --> <%@ taglib prefix="my" uri="http://www.changtusoft.cn/test/functions" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>自定义JSTL函数</title> </head> <body> 省份: <select name="provinces"> <option>--请选择省份--</option> <c:forEach items="${my:getProvinces()}" var="p"> <option>${p }</option> </c:forEach> </select> </body> </html> 部署例子到tomcat测试: http://localhost:8080/jstl_functions/index.jsp 结果可以显示省份下拉框表示成功... 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-08-26
标签的使用时提高了开发效率,但是同时要考虑运行效率,后期维护
|
|
返回顶楼 | |
发表时间:2009-08-26
感觉这东西得会,但一般情况下用不着,以备不时之需吧
|
|
返回顶楼 | |