首页 > Web开发 > 详细

J2ee之自定义jstl函数

时间:2015-06-09 02:07:56      阅读:290      评论:0      收藏:0      [点我收藏+]

背景:

自定义jstl function满足自己的需求,编码和时间格式化

实现:

1.自定义工具类:

public class UtilsTag {

	public static String date(Long time) throws Exception {
		// String vv = "" + value;
		// long time = Long.valueOf(vv);
		Calendar c = Calendar.getInstance();
		c.setTimeInMillis(time);
		SimpleDateFormat dateformat = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");
		String s = dateformat.format(c.getTime());
		return s;
	}

	public static String encode(String txt) throws Exception {
		return URLEncoder.encode(txt, "utf-8");
	}

}

注意点:

a.static

2.自定义tld文件:

<?xml version="1.0" encoding="GBK"?>  
<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>utils</short-name>  
    <!-- 定义第一个函数 -->  
    <function>  
        <!-- 定义第一个函数:reverse -->  
        <name>encode</name>  
        <!-- 定义函数处理类 -->  
        <function-class>com.pobaicn.wxp.web.UtilsTag</function-class>  
        <!-- 定义函数的对应方法 -->  
        <function-signature>  
            java.lang.String encode(java.lang.String)  
        </function-signature>  
    </function>  
    <function>  
        <name>date</name>  
        <function-class>com.pobaicn.wxp.web.UtilsTag</function-class>  
        <function-signature>  
            java.lang.String date(java.lang.Long)  
        </function-signature>  
    </function>  
</taglib>  

注意点:

a.类全路径

b.方法参数完全一致

3.部署:

web.xml中加入:

<jsp-config>
	<taglib>
		<taglib-uri>/utils</taglib-uri>
		<taglib-location>/WEB-INF/tlds/utils.tld</taglib-location>
	</taglib>
</jsp-config>

4.使用:

<%@ taglib uri="/utils" prefix="utils"%>  
  <a href="${basePath}detail?id=${utils:encode(item.id)}">
              [详情]
            </a>

 ${utils:date(item.bdate)}

?

J2ee之自定义jstl函数

原文:http://snv.iteye.com/blog/2217904

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!