JSP-自定义标签(一)
使用自定义标签的好处
1:加快Web应用开发的进度
2:提高代码的重用性
3:使得JSP程序更加容易维护
使用自定义标签与JavaBean的区别是
1:javaBean不能操作JSP形式的内容,而自定义标签可以处理JSP形式的标签体
2:自定义标签比JavaBean更能将复杂懂得操作缩减为十分简洁的形式
3:建立自定义标签比JavaBean困难
标签处理的程序过程
1:当容器创建一个新的标签实例后,通过setPageContext来设置标签的页面上下文。
2:使用setParent方法来设置这个标签的上一级标签,如果没有上一级嵌套,册设置为null。
3:设置标签属性,这个属性在标签库描述文件中定义,如果没有定义属性,就不调用该类方法。
4:调用doStartTag方法,这个方法可以返回EVAL_BODY_INCLUDE或SKIP_BODY,当返回EVAL_BODY_INCLUDE时,就计算标签体,如果返回SKIP_BODY就不计算标签体。
5:调用doEndTag方法,这个方法可以返回EVAL_PAGE或SKIP_PAGE,当返回EVAL_PAGE时容器将在标签结束时继续计算JSP的其他部分,如果返回SKIP_PAGE时,容器将在标签结束时停止计算JSP页面的其他部分。
6:调用release()方法释放标签程序占用的资源。
下面我们来通过范例来看一下如何创建一个自定义标签
displayDate.java代码如下
package tag.test.date;
import java.io.*;
import java.util.Date;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class displayDate extends TagSupport{
public int doStartTag()throws JspException{
JspWriter out=pageContext.getOut();
try
{
out.print(new Date());
}
catch(Exception e)
{
e.printStackTrace();
}
return (SKIP_BODY);
}
}
编译好此文件后把所产生的类拷贝到C:\tomcat\webapps\ROOT\WEB-INF\classes\tag\test\date目录下,
然后编写.tld文件代码,代码如下
<?xml version="1.0" encoding="ISO-8859-1"?>
1.2
1.2
date
this taglib provides tag to show date
displaydate
tag.test.date.displayDate
empty
注意此文件存放的路径为C:\tomcat\webapps\ROOT\WEB-INF
在然后修改web.xml文件,也就是向web.xml中添加下面内容
date
/WEB-INF/date.tld
最后就是编写header.jsp文件了,代码如下
<%@ taglib uri="date" prefix="mydate" %>
today is
注意:JSP代码中的<%@ taglib uri="date" prefix="mydate" %>uri值必须和web.xml中的date值一致。
做好上面的工作后,启动tomcat,在地址拦中输入http://localhost:8080/header.jsp 后就会看到下面的结果
today isSun May 13 08:41:36 CST 2007
好通过上面的讲解你一定对JSP的自定义标签有了一定的了解,现在就自己动手来实验一下把。
分享到:
相关推荐
3. **在JSP页面中使用自定义标签**:在JSP页面中,你可以通过`<%@ taglib %>`指令引入自定义标签库,并用`<mytag:tagname>`的形式调用自定义标签。 4. **配置Web应用**:确保web.xml文件中配置了对JSTL的支持,包括...
3. **编写XML标签**:接下来,我们可以在Mapper XML文件中使用自定义标签。假设我们要实现一个根据某个字段值决定是否包含某个子查询的功能,可以编写如下的自定义标签: ```xml SELECT * FROM users LEFT ...
下面将详细解释如何在ThinkPHP 3.0版本中实现自定义标签及其使用方法。 1. **自定义标签的作用** 自定义标签是ThinkPHP模板引擎的扩展,它可以将复杂的业务逻辑或重复的代码块封装起来,提高代码的可读性和复用性...
3. **在JSP页面中使用**:在JSP页面中,通过`<%@ taglib %>`指令引入自定义标签库,然后就可以像使用内置标签一样使用自定义标签了。 二、分页封装 分页是网页应用中常见的需求,通过自定义标签可以方便地实现。...
可以使用`document.querySelector`或`document.querySelectorAll`选择自定义标签,并通过`addEventListener`添加事件处理程序。 5. **语义化**:尽管可以自由创建自定义标签,但应避免过度使用,确保每个标签都有...
本资源“jsp自定义标签大全”包含了一系列示例和详细教程,涵盖了从基础到高级的自定义标签使用方法,对于想要深入了解和掌握JSP自定义标签的开发者来说是一份宝贵的参考资料。通过学习和实践这些示例,你可以更好地...
开发者可以根据需求,选择使用内置标签或自定义标签,甚至在同一个页面中混合使用,以达到最佳效果。 总之,Struts2自定义标签是提升项目开发效率和代码质量的有效手段。理解并熟练运用自定义标签,可以让开发者更...
下面是一个简单的自定义标签使用示例: ```html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ; charset=UTF-8" %> ``` 在这个例子中,`<tl:customTag>` 是一个自定义标签,它被...
3. **在JSP页面中使用自定义标签**:在JSP页面中,通过`<jsp:taglib>`指令引入TLD文件,然后就可以像使用内置标签一样使用自定义标签了。例如,`<myTag:myTag attribute1="value1" attribute2="value2">`。 在给定...
3. 使用自定义标签:在模板文件中,你可以像使用内置标签一样使用你的自定义标签。例如,如果你注册了一个名为`myCustomTag`的自定义指令,你可以在模板中这样使用:`...
以下是对自定义标签使用及其相关概念的详细解释: 1. **标签处理程序**: 标签处理程序是Java对象,它负责处理自定义标签的逻辑。当JSP容器遇到自定义标签时,会根据标签库描述符(TLD)找到对应的标签处理程序...
在`example.jsp`中,我们可以看到像`<mytags:customTag attribute="value">`这样的自定义标签使用,其中`mytags`是标签库前缀,`customTag`是标签的本地名称,`attribute`是标签属性。 开发自定义标签时,可能会...
3. **配置Struts2**:在struts.xml配置文件中,定义Action和结果类型,确保返回的数据可以被自定义标签使用。 4. **编写自定义标签**:创建JSP标签库,实现分页的展示逻辑。标签需要解析Action返回的PageBean对象,...
本文将深入探讨JSP 2.0中的自定义标签和自定义标签函数,以及如何配置和使用它们。 **一、自定义标签** 自定义标签是JSP中的一种高级特性,它允许开发者创建类似于HTML标签的自定义组件。这种组件可以封装复杂的...
4. **使用自定义标签**:在完成以上步骤后,你就可以在Spring的XML配置文件中像使用标准标签一样使用你的自定义标签了。例如,你可以写入`<my:custom-tag attr1="value1" attr2="value2"/>`。 在"Chapter2"工程中,...
通过引入标签库的 URI,我们可以像使用内置标签一样使用自定义标签。例如: ```jsp ``` 五、自定义标签示例 假设我们有一个自定义标签 `yfk:mytag`,用于显示用户信息。我们可能有以下实现: - 创建 Java 类 `...
在使用自定义标签前,我们需要在JSP页面中通过`<%@ taglib>`指令引入标签库,指定URI和前缀。例如: ```jsp ``` 然后在页面中就可以使用定义好的自定义标签,如: ```jsp ``` 自定义标签有多种类型,包括...
当你在JSP页面中使用自定义标签时,JSP容器会解析TLD文件,将自定义标签转换为Java代码执行。 创建自定义标签的步骤如下: 1. **定义TLD文件**:TLD文件是自定义标签的核心,它定义了标签的名称、属性、返回类型...
本篇文章将深入讲解Java中自定义标签的使用方法,包括基本概念、创建过程以及实际应用。 首先,我们需要理解自定义标签与标准JSP标签的区别。标准JSP标签如`<jsp:include>`、`<c:if>`等是Java EE提供的一组预定义...
本篇文章将深入探讨自定义标签的概念、工作原理以及如何创建和使用它们。 一、自定义标签概述 自定义标签可以看作是HTML标签的扩展,但它们提供了更丰富的功能和灵活性。通过自定义标签,开发者可以创建具有特定...