JSP自定义标签
2017-12-06 18:04
218 查看
标签描述文件
引用:<%@ taglib prefix="my" uri="/WEB-INF/tld/my.tld" %>
示例:
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"> <taglib> <tlib-version>1.0</tlib-version><!-- 代表标签库的版本号 --> <jsp-version>2.0</jsp-version><!-- 代表jsp的版本 --> <short-name>my</short-name><!-- 你的标签库的简称 --> <uri>http://my.com</uri><!-- 你标签库的引用uri --> <tag> <name>simple</name><!-- 你定义的标签的名称 --> <tag-class>com.fyp.test.demo.web.tag.MySimpleTag</tag-class><!-- 对应的标签处理程序:包名+类名 --> <body-content>empty</body-content><!-- 标签体内容的格式 --> <attribute> <name>param</name> <required>true</required> <type>java.lang.String</type> </attribute> </tag> </taglib>
body-content说明:
tagdependent:指定标签处理类自己负责处理标签体。
empty:指定该标签只能作用空标签使用。
scriptless:指定该标签的标签体可以是静态 HTML 元素,表达式语言,但不允许出现 JSP 脚本(这种是最常用的,不能出现的是jsp脚本,但是EL表达式和其他标签是可以用的)。
JSP:指定该标签的标签体可以使用 JSP 脚本。
attribute标签的rtexprvalue属性要注意下,这个属性置为true,参数才能接收EL表达式。
自定义标签开发
依赖:<dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency>
java简单例子:
public class MySimpleTag extends SimpleTagSupport { private String param; public void doTag() throws JspException, IOException { JspWriter out = getJspContext().getOut(); out.println("Hello world! The param=" + param); } public String getParam() { return param; } public void setParam(String param) { this.param = param; } }
jsp简单例子:
<%@ taglib prefix="my" uri="/WEB-INF/tld/my.tld" %> ... <my:simple param="123"/>
如果要带标签体,需要在描述文件里指定:
<body-content>scriptless</body-content>
java带标签体的例子:
public void doTag() throws JspException, IOException { JspWriter out = getJspContext().getOut(); out.println("<br>我是前缀,param=" + param + "<hr>"); getJspBody().invoke(null); out.println("<br>我是后缀,param=" + param + "<hr>"); }
jsp带标签体的例子:
<my:simple param="123"> 我是页面内容 </my:simple>
相关文章推荐
- Extjs Ajax框架与Jsp自定义标签
- 心得10--jsp自定义标签介绍
- JSP自定义标签详细讲解
- JSP自定义标签基础知识学习
- JSP自定义标签
- jsp自定义标签总结
- (转)JSP自定义标签
- JSP自定义标签
- [学习笔记]JSP自定义标签(3)
- JavaWeb基础——JSP自定义标签
- JSP自定义标签(九到十六)
- JSP自定义标签
- JDBC+Servlet+JSP整合开发之27.JSP自定义标签 推荐
- jsp自定义标签-----嵌套标签
- jsp自定义标签
- JSP自定义标签的另类体验
- JSP自定义标签
- Java程序员从笨鸟到菜鸟之(二十)jsp自定义标签
- 利用 JSP 2 提供的 SimpleTagSupport 开发自定义标签
- (转)掌握jsp自定义标签:(六)