自己开发的标签没有通用性,我们基本上是使用标签,使用已经开发好的标签,例如:JSTL或者是
struts中的标签;
这里学习标签开发这是为了便于理解标签;
·定义一个简单的标签:
如果现要定义个标签,我们必须继承javax.servlet.jsp.tagext.TagSupport类;
定义标签的支持类:HelloTag.java
在标签开发之中,最麻烦的部分就是返回值,下面先给出一个简单的返回值,由于
现在定义的是一个没有标签体的标签,所以表示标签中的其他内容不再执行了;
之前在开发Servlet的时候曾经配置过了一个Servlet的开发包,但现在的标签的支持类
并不在servlet包之中,在tomcat的lib目录下找到jsp-api.jar,将其放到
C:\Program Files\Java\jdk1.6.0_18\jre\lib\ext中,或者将该jar包配置到
ClassPath中;(注意:还需要将el_api.jar包也配置到classpath或者放到上面的文件夹中)
package tag.lid.demo;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class HelloTag extends TagSupport{
//覆写父类的方法---标签开始例如<a>这就是标签开始
public int doStartTag() throws JspException{
JspWriter out=super.pageContext.getOut();
try{
out.println("<h1>Hello World!!!</h1>");
}
catch(Exception e){
}
return TagSupport.SKIP_BODY;
}
}
编译以上代码;
但是只靠一个标签的支持类本身是无法完成 全部功能的,
还需要定义个一标签描述文件----WEB-INF/hellotab.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_1.xsd"
version="2.1">
<tlib-version>1.0</tlib-version><!--表示标签库的版本-->
<short-name>firsttag</short-name><!--为标签库在TLD中的描述名称-->
<tag>
<name>hello</name> <!--表示标签在JSP中的使用名称-->
<tag-class>
tag.lid.demo.HelloTag
</tag-class> <!--表示这个标签所指向的class文件-->
<body-content>empty</body-content><!--表示标签体内容为空-->
</tag>
</taglib>
此时,一个标签的配置文件就完成了,
之后就需要在一个JSP文件之中使用此标签
到此可以就完成了功能,但是这些功能是直接有标签的支持类完成的,而只有通过*.tld文件
才可以使用这个标签的支持类,当然在标签的开发之中,也可以将所有的标签的描述
文件直接在web.xml文件中进行配置;
<jsp-config>
<taglib>
<taglib-uri>lid_hello</taglib-uri>
<taglib-location>/WEB-INF/hellotag.tld</taglib-location>
</taglib>
</jsp-config>
是在web.xml文件之中为tld的文件做了一个映射,映射的名称是lid_hello,以后在
jsp界面中就可以直接通过lid_hello进行访问了;
<%@ page contentType="text/html" pageEncoding="gbk"%>
<%@ taglib prefix="mytab" uri="lid_hello"%>
<html>
<head><title>这是测试</title></head>
<body>
<h3><mytab:hello/></h3>
</body>
</html>
标签的操作之中文件配置的非常多,需要标签的支持类,标签的描述文件,如果需要还可以在
web.xml文件之中配置,还需要在jsp中进行引入;
在一个jsp文件之中,基本功能:判断、输出;
·小结:
标签可以简化jsp中的scriptlet;
标签需要*.tld文件的支持,之后使用<%@ taglib%>使用标签; 07---jsp标签编程01(认识标签)
最新推荐文章于 2025-05-08 09:24:11 发布
本文详细介绍了如何在JSP中开发自定义标签,包括定义简单标签、编写支持类、创建标签描述文件、配置标签库及在JSP中使用标签等步骤。重点突出标签开发流程与实践应用。
1187

被折叠的 条评论
为什么被折叠?



