首页 > 编程语言 > 详细

java web 自定义标签

时间:2017-03-14 21:21:36      阅读:242      评论:0      收藏:0      [点我收藏+]

自定义标签包括:空标签、带属性的标签、带标签体的标签、嵌套标签

制作自定义标签的步骤:

第一步、实现SimpleTag接口或者继承SimpleTagSupport类


实现SimpleTag代码

public class HelloTag implements SimpleTag {
/**
 * 执行标签
 */
@Override
public void doTag() throws JspException, IOException {
}
@Override
public JspTag getParent() {
return null;
}
/**
 * 如果有标签体,执行此代码
 */
@Override
public void setJspBody(JspFragment jspFragment) {
}
/**
 * 标签初始化 PageContext
 */
@Override
public void setJspContext(JspContext jspContext) {
}
/**
 * 设置父标签
 */
@Override
public void setParent(JspTag jspTag) {
}
}

tld文件内容

<?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">
<tlib-version>1.0</tlib-version>
<short-name>h</short-name>
<uri>http://www.hdz.com/core</uri>
<tag>
<name>choose</name>
<tag-class>com.hdz.tag.ChooseTag</tag-class>
<body-content>scriptless</body-content>
</tag>
<tag>
<name>when</name>
<tag-class>com.hdz.tag.WhenTag</tag-class>
<body-content>scriptless</body-content>
<attribute>
<name>test</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<name>other</name>
<tag-class>com.hdz.tag.OtherTag</tag-class>
<body-content>scriptless</body-content>
</tag>
<function>
<name>connact</name>
<function-class>com.hdz.tag.MyFunction</function-class>
<function-signature>java.lang.String connact(java.lang.String)</function-signature>
</function>
</taglib>

继承SimpleTagSupport类

public class HelloSonTag extends SimpleTagSupport {
@Override
public void doTag() throws JspException, IOException {
super.doTag();
}
}

显示标签体内容

JspFragment jspFragment = getJspBody();
jspFragment.invoke(null);//参数为空,输出到网页

StringWriter stringWriter = new StringWriter()
JspFragment jspFragment = getJspBody();
jspFragment.invoke(stringWriter );//输出到控制台

主要对象

public void setJspContext(JspContext jspContext) {
    PageContext pageContext = jspContext;//初始化PageContext
}


本文出自 “11137669” 博客,请务必保留此出处http://11147669.blog.51cto.com/11137669/1906508

java web 自定义标签

原文:http://11147669.blog.51cto.com/11137669/1906508

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!