2021-04-21 22:05  阅读(115)
文章分类:JSP 简单教程 文章标签:JSP
©  原文作者:一点教程 原文地址:http://www.yiidian.com/jsp/

在本文的示例中,我们将创建一个JSP自定义标签:打印当前日期和时间。

1 创建自定义标签处理程序

要创建标签处理程序,我们要继承TagSupport类并覆盖其doStartTag()方法。为了在JSP写入数据,我们需要使用JspWriter类。

MyTagHandler:

    
    package com.yiidian;
    
    import javax.servlet.jsp.JspException;
    import javax.servlet.jsp.JspWriter;
    import javax.servlet.jsp.tagext.TagSupport;
    import java.util.Calendar;
    
    /**
     * 一点教程网 - http://www.yiidian.com
     */
    public class MyTagHandler extends TagSupport {
    
        public int doStartTag() throws JspException {
            JspWriter out=pageContext.getOut();//返回JspWriter实例
            try{
                out.print(Calendar.getInstance().getTime());//使用JspWriter打印当前日期和时间
            }catch(Exception e){System.out.println(e);}
            return SKIP_BODY;//不执行Body的内容
        }
    }
    

2 创建TLD文件

标签库描述符(TLD)文件包含标签和标签处理程序类的信息。它必须包含在WEB-INF目录中。

mytags.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/j2ee/dtd/web-jsptaglibrary_1_2.dtd">
    
    <taglib>
    
        <tlib-version>1.0</tlib-version>
        <jsp-version>1.2</jsp-version>
        <short-name>simple</short-name>
        <uri>http://www.yiidian.com/example-taglib</uri>
    
        <tag>
            <name>today</name>
            <tag-class>com.yiidian.MyTagHandler</tag-class>
        </tag>
    
    </taglib>

3 创建JSP文件,使用标签

让我们在JSP文件中使用标签。暂时我们直接指定tld文件的路径,但是建议使用uri名称代替tld文件的完整路径。稍后我们将了解自定义URI路径

index.jsp:

    
    <%@ page language="java" contentType="text/html;charset=utf-8" %>
    <%@ taglib uri="WEB-INF/mytags.tld" prefix="m" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-JSP自定义标签案例</title>
    </head>
    <body>
    
    当前日期时间为: <m:today/>
    
    </body>
    </html>

4 运行测试

20210421220116_1.png

点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> JSP自定义标签-案例
上一篇
JSP自定义标签-简介
下一篇
JSP自定义标签-属性