一.编写标记类HelloWorldTag.java:
package cn.com.jsp.sample.tag;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class HelloWorldTag extends TagSupport {
public int doStartTag() {
try {
JspWriter out = pageContext.getOut();
out.print("Hello,world!");
} catch (Exception ex) {
System.out.println("Error in HelloWorldTag class" + ex);
}
return (SKIP_BODY); // 返回一常量,告知已无标记体需处理
}
}
二.编写jsp-taglib.tld文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
<tlibversion>1.0</tlibversion> <!-- taglib版本号 -->
<jspversion>1.1</jspversion> <!-- JSP版本号 -->
<shortname>jtl</shortname> <!-- 声明该taglib的简称 -->
<tag> <!-- 标记定义开始 -->
<name>hwt</name> <!-- 标记名即JSP内部调用名 -->
<tagclass>cn.com.jsp.sample.tag.HelloWorldTag</tagclass> <!-- 标记类名 -->
<bodycontent>empty</bodycontent> <!-- 无标记体 -->
</tag> <!-- 标记定义结束 -->
</taglib>
三.编写HelloWorld.jsp:
<%@page contentType="text/html; charset=GBK" %>
<%@taglib uri="/WEB-INF/jsp-taglib.tld" prefix="jtl" %>
<html>
<head>
<title>A JSTL sample.</title>
</head>
<body>
<jtl:hwt />
</body>
</html>
运行http://localhost:8080/HelloWorld.jsp看看结果吧!
*注:
1.HelloWorldTag.java位于<wwwroot>/WEB-INF/cn/com/jsp/sample下。
2.jsp-taglib.tld位于<wwwroot>/WEB-INF下。
3.HelloWorld.jsp位于<wwwroot>下。