忙了半天终于对自定义的tag有所了解..随手写下一些内容吧..先看看我的环境吧..java IDE是用 jcreator pro ..服务器用的是tomcat5.59为了让大家 对 自定义的tag有所了解..先看看我的jsp源代码然后再看看效果图呵呵..<%@ taglib uri="../WEB-INF/date-format.tld" prefix="df" %>
日期的输入格式:yyyy/mm/dd,格式 化:yyyy年 mm月 dd日
输入日期2005/5/18 格式化 结果 <%-- 使用 自定义的formatdate标记 --%> 再看看在浏览器中的效果吧.日期的输入格式:yyyy/mm/dd,格式 化:yyyy年 mm月 dd日输入日期2003/7/23格式化 结果 2003年07月23日这里的兰颜色当然是我blog中的了呵呵..实现这个简单的自定义标签的方法如下:...首先建立一个 .java文件Dateformatter.java,再jcreator中输入如下代码:package ch02.jsp.taglib;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import javax.servlet.jsp.PageContext;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspTagException;import javax.servlet.jsp.tagext.*;public class DateFormatter extends TagSupport{ protected String value; protected String format; public void setValue(String value) { this.value=value; } public void setFormat(String format) { this.format=format; } public int doStartTag() throws JspTagException { try{ System.out.println("value="+value+",format="+format); pageContext.getOut().write(formatDateValue(value)); }catch(IllegalArgumentException e) { e.printStackTrace(); } catch(Exception e) { throw new JspTagException(e.getMessage()); } return SKIP_BODY; } public int doEndTag() throws JspException { return EVAL_PAGE; } protected String formatDateValue(String date) throws ParseException { if(value==null) { return ""; } DateFormat formatter =new SimpleDateFormat(format); return formatter.format(new SimpleDateFormat("yyyy/mm/dd").parse(value)); }}对 了如果要在jcreator中编译通过该文件..需要设置jcreator的jdk..在jdk路径中加入tomcat中jsp-api.jar和 servlet-api.jar的路径....然后把编译好的.class文件放在web-inf的class目录下注意一定要放在相应的包名目录下 啊..
再次创建标记库描述符文件(tag library descriptor)date-format.tld,放到任意目录下就好了,只要你能找到它,但还是建议放到web-inf目录下..date-format.tld内容如下 PUBLIC "-//SUN Microsystems,Inc.//DTD Jsp Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> 1.0 2.0 df riqigeshi formatdate ch02.jsp.taglib.DateFormatter empty value true false format true false 最后编写jsp文件mytag.jsp如开头的jsp代码就可以用自己的tag了 ..这里的例子来自< >呵呵..