JSP自定义一个简单标签教程

用JSP自定义标签库,输出当前时间,流程如下:

1.开发自定义的标签库类,自定义标签库必须继承javax.servlet.jsp.tagext.SimpleTagSupport

如NowTime.java

  1. package mckee;
  2.  
  3. import java.io.IOException;
  4.  
  5. import javax.servlet.jsp.JspException;
  6. import javax.servlet.jsp.tagext.SimpleTagSupport;
  7.  
  8. public class NowTime extends SimpleTagSupport
  9. {
  10. public void doTag() throws JspException,IOException
  11. {
  12. getJspContext().getOut().print(new java.util.Date());
  13. }
  14. }

2.建立TLD文件,将建立的自定义tld放在WEB-INF或其任意子路径下,该文件会被自动加载,

如:nowtime.tld

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <taglib xmlns="http://java.sun.com/xml/ns/j2ee"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
  5. version="2.0">
  6. <description>A tag library exercising SimpleTag handlers.</description>
  7. <tlib-version>1.0</tlib-version>
  8. <short-name>mytag</short-name>
  9. <uri>/mytag</uri><!-- 这个很重要,jsp页面就是根据uri来定位标签库的 -->
  10. <tag>
  11. <name>nowtime</name><!-- 定义标签名 -->
  12. <tag-class>mckee.NowTime</tag-class><!-- 定义标签处理类 -->
  13. <body-content>empty</body-content><!-- 定义标签体为空 -->
  14. </tag>
  15.  
  16. </taglib>

3.在jsp页面中使用自定义标签

如tag-test.jsp

 
 
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@ taglib uri="/mytag" prefix="mytag" %>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>http://www.heatpress123.com</title>
  8. </head>
  9. <body>
  10. <mytag:nowtime/>
  11. </body>
  12. </html>

运行结果如下:

你可能感兴趣的:(互联网,SNS)