您的位置:首页 > Web前端 > JavaScript

JSP带有标签体的自定义标签

2017-03-04 20:56 387 查看
新建OutTag类

如何添加jsp-api.jar包

OutTag类详细代码

package bid.zhazhapan.fims.tag;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.BodyTagSupport;

public class OutTag extends BodyTagSupport {
private boolean out;// 判断是否输出标签体的属性

// 通过set方法获得页面out的属性值
public void setOut(boolean out) {
this.out = out;
}

// 覆盖doStartTag()方法
public int doStartTag() throws JspException {
if (out == true) {
return this.EVAL_BODY_INCLUDE;
} else {
return this.SKIP_BODY;
}
}
}


如何配置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>output</javaee:name>
<javaee:tag-class>bid.zhazhapan.fims.tag.OutTag</javaee:tag-class>
<javaee:body-content>JSP</javaee:body-content>
<javaee:attribute>
<javaee:name>out</javaee:name>
<javaee:required>true</javaee:required
<javaee:rtexprvalue>true</javaee:rtexprvalue>
</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:output out="true">Hello everybody</mytag:output>
</body>
</html>
<!-- 输出结果:Hello everybody -->
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  标签 jsp java