JSP自定义标签demo

来源:互联网 发布:蓝瘦香菇网络用语 编辑:程序博客网 时间:2024/06/05 17:45

test-tags.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>testtld</short-name><uri>http://www.300.cn/jsp/jstl/testtld</uri><tag><name>out</name><tag-class>cn.ce.test.TestTag</tag-class><body-content>empty</body-content><attribute><name>url</name><required>true</required><rtexprvalue>true</rtexprvalue></attribute></tag></taglib>

标签out引用类

package cn.ce.test;import java.io.IOException;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.tagext.TagSupport;public class TestTag extends TagSupport{        private static final long serialVersionUID = 1L;        private String url;    public String getUrl() {        return url;    }    public void setUrl(String url) {        this.url = url;    }        public int doStartTag() throws JspException {        StringBuilder sb = new StringBuilder();        sb.append("<span>");        sb.append(getUrl());        sb.append("</span>");        JspWriter out = pageContext.getOut();        try {            out.write(sb.toString());        } catch (IOException e) {            e.printStackTrace();        }        return EVAL_BODY_INCLUDE;    }    }

web.xml中添加标签配置

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" 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-app_2_4.xsd">  <display-name></display-name>    <jsp-config>  <taglib>  <taglib-location>test-tags.tld</taglib-location>  <taglib-uri>http://www.300.cn/jsp/jstl/testtld</taglib-uri>  </taglib>  </jsp-config>    <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list></web-app>


jsp页面中使用

<%@ taglib prefix="t"uri="http://www.300.cn/jsp/jstl/testtld" %><t:out url="aaaaa11112222"/>



0 0
原创粉丝点击