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

JSP---自定义标签库(TagLib)

2015-09-09 14:48 549 查看
目标

建立一个自定义的,可以应用于JSP文件中的标签,形如:<mytag:helloworld></mytag:hekkoworld>或<mytag:hekkoworld/>

用于在网页上输出字符串“HelloWorld”。

步骤

1、编写标签实现类
       a) 从javax.servlet.jsp.tagext.SimpleTagSupport类继承
       b)重写doTag()方法,实现在网页上输出

2、在WEB-INF目录,或者WEB-INF子目录下建立helloworld.tld文件,即自定义标签的说明文件(本例中放置在WEB-INF目录下) 
           tld (tag library definition)

3、建立TestTag.jsp文件进行测试

注意:a)标签实现类必须置于包中,不能是裸体类
            b)不需要像JSP1.2中修改web.xml

1、编写标签实现类

package mytag;

import java.io.IOException;

import javax.servlet.jsp.JspException;

import javax.servlet.jsp.tagext.SimpleTagSupport;

public class HelloTag extends SimpleTagSupport {
@Override
public void doTag() throws JspException, IOException {

this.getJspContext().getOut().write("HelloWorld!");
}

    

}

2、在WEB-INF目录下建立helloworld.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>
<uri>/helloworldtaglib</uri>
       <short-name>mytag</short-name>
<tag>
<name>helloworld</name>
<tag-class>mytag.HelloTag</tag-class>
<body-content>empty</body-content>
</tag>

</taglib>

3、建立TestTag.jsp文件进行测试

  <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>

 <%@ taglib uri="/helloworldtaglib"  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=GB18030">

<title>Insert title here</title>

</head>

<body>
<mytag:helloworld></mytag:helloworld>
 <br>

<mytag:helloworld />

</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  标签 taglib jsp