借助TagSupport 实现自定义标签
来源:互联网 发布:阿尔法狗 算法原理 编辑:程序博客网 时间:2024/05/16 09:04
首先,得导入jar包 jsp-api-2.2-sources.jar
第二步,定义一个用来实现标签功能的java类,例如:DateConvert.java
- import java.io.IOException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import javax.servlet.jsp.JspException;
- import javax.servlet.jsp.tagext.TagSupport;
- /**
- * 数据类型转换
- * @author LiDuanqiang
- *
- */
- @SuppressWarnings("serial")
- public class DateConvert extends TagSupport{
- private String longTime;
- @Override
- public int doStartTag() throws JspException {
- long l = 0l;
- if (longTime!=null&&!longTime.equals("")) {
- l = Long.parseLong(longTime);
- }
- Date date = new Date(l);
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- String targetTime = format.format(date);
- try {
- super.pageContext.getOut().write(targetTime);
- } catch (IOException e) {
- e.printStackTrace();
- }
- return super.doStartTag();
- }
- //setter and getter
- public void setLongTime(String longTime) {
- this.longTime = longTime;
- }
- }
第三步,可在WEB-INF目录下定义一个*.tld文件,例如dateConvert.tld:
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
- "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
- <taglib>
- <tlib-version>1.0</tlib-version>
- <jsp-version>1.2</jsp-version>
- <short-name>ct</short-name>
- <uri>/dateConvert</uri>
- <tag>
- <name>longStr</name>
- <tag-class>org.up.snapshot.utils.DateConvert</tag-class>
- <body-content>JSP</body-content>
- <attribute>
- <name>longTime</name>
- <required>true</required>
- <rtexprvalue>true</rtexprvalue>
- </attribute>
- </tag>
- </taglib>
第四步,在web.xml文件中引用你的*.tld文件:
- <taglib>
- <taglib-uri>/dateConvert</taglib-uri>
- <taglib-location>dateConvert.tld</taglib-location>
- </taglib>
- <welcome-file-list>
- <welcome-file>dateConvert.jsp</welcome-file>
- </welcome-file-list>
第五步,在你的页面引入自定义标签库进行使用,例如:dateConvert.jsp:
- <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
- <%@ taglib uri="/dateConvert" prefix="ct"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>数据类型转换</title>
- </head>
- <body>
- <ct:longStr longTime="1314842011312"></ct:longStr>
- </body>
- </html>
以上代码实现的是将长整型的数据通过自定义标签转换成指定日期格式进行输出。当然,大家可以定义功能更加强大的java类来实现你的标签功能。
0 0
- 借助TagSupport 实现自定义标签
- 借助TagSupport 实现自定义标签
- 借助TagSupport 实现自定义标签
- 借助TagSupport 实现自定义标签
- 自定义标签(TagSupport)!!!
- TagSupport 自定义权限标签
- 自定义标签(TagSupport )
- jsp自定义标签 TagSupport
- 使用TagSupport自定义标签
- 自定义标签TagSupport
- 自定义标签(TagSupport )
- 自定义标签 嵌套标签 TagSupport
- 利用TagSupport创建自定义标签实现网页左侧菜单
- 最简单的自定义标签 (TagSupport)
- (二)创建自定义标签TagSupport类步骤
- 自定义标签中tagsupport的一些方法
- 自定义JSP标签:TagSupport类的生命周期
- 自定义JSP标签:TagSupport类的生命周期
- chartlet参考手册
- NAT技术介绍(转)
- 开发资源总结, 都是干货 ~ (持续整理中 已 60%)
- 手机端页面的操作小规范
- 第一周(2)——杭电2054
- 借助TagSupport 实现自定义标签
- 简单触发器
- iOS下的Notification的使用
- 亡羊补牢的方法---适配器模式
- 解决Qt5 Creator无法切换输入法(fcitx),不能录入汉字问题
- iOS安全攻防(一):Hack必备的命令与工具
- 传真百科:电子传真邮件客户端
- HBase基本用法 (二)
- RTP timestamp与帧率及时钟频率的关系