日期:2014-05-16 浏览次数:20508 次
/*
实现功能:自定义标签控制JSP内容显示还是不显示
日期:20130930
作者:烟大阳仔
*/
1.编写一个实现tag接口的JAVA类
public int doStartTag() throws JspException {
return Tag.SKIP_BODY;//控制标签不显示
//return Tag.EVAL_BODY_INCLUDE;//控制标
签对所有人显示
}
2.在tld文件中对标签处理器进行描述(tld文件的位置WEB-INF里面)
<?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/j2ee
http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>A tag library exercising SimpleTag
handlers.</description>
<tlib-version>1.0</tlib-version>
<short-name>TagLibDemo2</short-name>
<uri>/TagLibDemo2</uri>
<tag>
<name>Demo2</name>
<tag-class>cn.com.web.tag.TagDemo2</tag-class>
<body-content>JSP</body-content>
</tag>
</taglib>
3.在jsp页面中使用标签
<body>
<TagLib:Demo2>
MyTagLib
</TagLib:Demo2>
</body>
-------------------------------------------------------------------------
/*
实现功能:控制整个JSP页面的输出
日期:20130930
作者:烟大阳仔
*/
1.编写一个实现tag接口的JAVA类
public int doEndTag() throws JspException {
// TODO Auto-generated method stub
return Tag.SKIP_PAGE;//不显示页面的内容
//return Tag.EVAL_PAGE;//显示整个页面的内
容
}
2.在tld文件中对标签处理器进行描述(tld文件的位置WEB-INF里面)
<?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/j2ee
http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>A tag library exercising SimpleTag
handlers.</description>
<tlib-version>1.0</tlib-version>
<short-name>TagDemo3</short-name>
<uri>/TagDemo3</uri>
<tag>
<name>Demo3</name>
<tag-class>cn.com.web.tag.TagDemo3</tag-class>
<body-content>empty</body-content>
</tag>
</taglib>
3.在jsp页面中使用标签
<%@ page language="java" contentType="text/html; charset=UTF-
8"
pageEncoding="UTF-8"%>
<%@taglib uri="/TagDemo3" prefix="TagLib" %>
<TagLib:Demo3/>
<!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=UTF-8">
<title>控制整个JSP是不是输出</title>
</head>
<body>
这个页面在Taglib:Demo3标签的作用下无法显示(第四行添
加了标签)
</body>
</html>
-------------------------------------------------------------------------
/*
实现功能:控制整个JSP页面内容循环显示
日期:20130930
作者:烟大阳仔
*/
1.编写一个实现tag接口的JAVA类实现TagSupport使用Iteration接口
public class TagDemo4 extends TagSupport
{
private static final long serialVersionUID = 1L;
int x=5;
@Override
public int doAfterBody() throws JspException {
// TODO Auto-generated method stub
x--;
if(x>0)
{
return
IterationTag.EVAL_BODY_AGAIN;
}
else
{
return IterationTag.SKIP_BODY;
}
}
@Override
public int doStartTag() throws JspException {
// TODO Auto-generated method stub
return Tag.EVAL_BODY_INCLUDE;
}
2.在tld文件中对标签处理器进行描述(tld文件的位置WEB-INF里面)
<?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/j2ee
http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.