jsp自定义标签 开发 三个 步骤
1,创建自定义标签处理类
1.1 创建一个类并继承SimpleTagSupport
1.2重写里面的doTag()方法
package com;
import java.io.IOException;
import java.util.Date;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public class MyTaglib extends SimpleTagSupport {
//重写doTag方法
public void doTag(){
try {
//获取页面输出流,并输出时间
this.getJspContext().getOut().write(new Date()+"");
} catch (IOException e) {
e.printStackTrace();
}
}
}
2,在WEB-INF目录下建立一个*.tld文件,每个*.tld文件对应一个标签库
在tomcat的D:\apache-tomcat-7.0.52\webapps\examples\WEB-INF\jsp2 目录下有个jsp2-example-taglib.tld文件,修改一下重命名放在WEB-INF目录下
<?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">
<description>自定义标签</description>
<tlib-version>1.0</tlib-version> <!-- 版本 -->
<short-name>t</short-name> <!-- 简短名称 -->
<uri>http://localhost:8080/taglib</uri> <!-- 定义标签的uri 通过uri找到此标签 -->
<tag> <!-- 定义一个标签 -->
<name>Mydate</name> <!-- 标签名称 -->
<tag-class>com.MyTaglib</tag-class> <!-- 标签类 全限定类名 -->
<body-content>empty</body-content><!-- 指定该标签是空标签 -->
</tag>
</taglib>
3,在jsp中使用自定义标签
导入自定义标签库 :
<%@ taglib uri="http://localhost:8080/taglib" prefix="t" %>
jsp文件
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://localhost:8080/taglib" prefix="t" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>测试自定义标签</title>
</head>
<body>
测试 <t:Mydate/> <!-- t是简短名 :Mydate是标签名称 -->
</body>
</html>