- 新建HelloWelTag类
- 如何添加jsp-api.jar包
- HelloWelTag类详细代码
package bid.zhazhapan.fims.tag;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
public class HelloWelTag extends TagSupport {
private String name;// 定义对应标签的属性
// 通过set方法从页面获得name的属性值
public void setName(String name) {
this.name = name;
}
// 覆盖doEndTag()方法
public int doEndTag() throws JspException {
try {
// 通过pageContext对象获得页面隐式对象out,向客户端输出结果
pageContext.getOut().write("Welcome " + name);
} catch (IOException e) {
e.printStackTrace();
new JspException("IO Error" + e.getMessage());
}
return this.EVAL_PAGE;
}
}
- 如何配置xml
-
<!-- xml详细内容 --> <?xml version="1.0" encoding="UTF-8"?> <javaee:taglib version="2.1" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd "> <javaee:tlib-version>1.0</javaee:tlib-version> <javaee:short-name>demo</javaee:short-name> <javaee:uri>/demo</javaee:uri> <javaee:tag> <javaee:name>welcome</javaee:name> <javaee:tag-class>bid.zhazhapan.fims.tag.HelloWelTag</javaee:tag-class> <javaee:body-content>empty</javaee:body-content> <javaee:attribute> <javaee:name>name</javaee:name><!-- 属性名称 --> <javaee:required>true</javaee:required><!-- 属性是否必须 --> <javaee:rtexprvalue>true</javaee:rtexprvalue><!-- 属性是否可以添加动态代码(jsp脚本) --> </javaee:attribute> </javaee:tag> </javaee:taglib>
- 新建test.jsp来测试标签
-
<!-- test.jsp详细代码 --> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib uri="WEB-INF/tlds/mytag.tld" prefix="mytag" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <mytag:welcome name="<%=\"Tony\" %>" /> </body> </html> <!-- 输出结果:Welcome Tony -->