z注意每个uri地址要保持统一
1.创建MytagPrinta.java文件
package cn.tag;import java.io.IOException;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspTagException;import javax.servlet.jsp.tagext.TagSupport;public class MytagPrinta extends TagSupport {/** * ?*/private static final long serialVersionUID = 1L;protected String value = null;protected String type = "0";public String getValue() {return value;}public void setValue(String value) {this.value = value;}public String getType() {return type;}public void setType(String type) {this.type = type;}@Overridepublic int doStartTag() throws JspException {// TODO Auto-generated method stubtry {if(type.equals("0")){pageContext.getOut().println("hello:" + value);}else{pageContext.getOut().print("hell:"+value+"<br>");}} catch (IOException e) {// TODO Auto-generated catch blockthrow new JspTagException( e.getMessage() );}return SKIP_PAGE;}@Overridepublic int doEndTag() throws JspException {// TODO Auto-generated method stubreturn EVAL_PAGE;}}
2.配置web-info下的web.xml文件
<jsp-config> ???<taglib> ?<taglib-uri>http://www.tag.com/mytag</taglib-uri> ?<taglib-location>/WEB-INF/mytlds/mytag.tld</taglib-location> ??</taglib> ??</jsp-config>
3.web-info下的mytlds文件夹下创建 mytag.tld
<?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/j2eehttp://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"version="2.0"><description>mytag 带type和value属性的打印</description><display-name>mytag 标签库</display-name><tlib-version>1.0</tlib-version><short-name>mytag</short-name><uri>http://www.tag.com/mytag</uri><tag><description>打印value和type</description><name>printa</name><tag-class>cn.tag.MytagPrinta</tag-class><body-content>empty</body-content><attribute><name>type</name><required>false</required><rtexprvalue>true</rtexprvalue></attribute><attribute><name>value</name><required>true</required><rtexprvalue>true</rtexprvalue></attribute></tag></taglib>
4.新建tag.jsp文件。调用
<%@ page language="java" contentType="text/html; charset=utf-8"%><%@ taglib prefix="mytag" uri="http://www.tag.com/mytag" %><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>带属性标签实例</title></head><body><h3>调用带属性的print标签</h3>打印后换行: <mytag:printa value="print" type="1"/>打印后不换行:<mytag:printa value="printa" type="0"/></body></html>
jsp:tld标签
原文地址:https://www.cnblogs.com/achengmu/p/8277847.html