日期:2014-05-16 浏览次数:20361 次
/* 实现功能:自定义标签控制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.