`
srj2903
  • 浏览: 106438 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

自定义Taglib

    博客分类:
  • jsp
阅读更多

随便写了一个taglib 代码如下

先建一个Welcome文件

package com.test;

import java.io.IOException;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.BodyContent;
import javax.servlet.jsp.tagext.BodyTagSupport;

public class Welcome extends BodyTagSupport{

    @Override
    public int doAfterBody() throws JspException {
       
        try {
            BodyContent bodyContent = super.getBodyContent();
            String bodyString = bodyContent.getString();
            JspWriter out = bodyContent.getEnclosingWriter();
            out.print(bodyString.toUpperCase());
            bodyContent.clear();
        } catch (IOException e) {
           System.out.println("BodyContentTag.doAfterBody中发生错误"+e.getMessage());
        }
        return EVAL_PAGE;
       
    }

    @Override
    public void setBodyContent(BodyContent bc) {
        super.setBodyContent(bc);
        System.out.println("BodyContent=  '"+bc.getString()+"' ");
       
    }

}

在WEB-INF下建立一个Welcome.tld文件

 

<!DOCTYPE taglib
          PUBLIC "-//SUN Microsystems,Inc.//DTD JSP Tag Library 1.2//EN"
          "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"
>
<taglib xmlns="http://java.sun.com/JSP/TagLibraryDescriptor">
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>Simple Tags</short-name>
   
    <tag>
        <name>simpletag</name>
        <tag-class>com.test.Welcome</tag-class>
        <body-content>jsp</body-content>
    </tag>
</taglib>

 

 

最后在jsp中调用就可以了

 

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri='WEB-INF/welcome.tld' prefix="w" %>

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
   
    <title>My JSP 'index.jsp' starting page</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">   
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
  </head>
 
  <body>
   
    <w:simpletag>欢迎光临 shop stop </w:simpletag>
   
  </body>
</html>

 

 

 

分享到:
评论

相关推荐

    在jsp中使用自定义taglib

    在JavaServer Pages (JSP) 中,自定义Taglib是一种扩展JSP功能的方式,它允许开发者创建可重用的自定义标签,以提高代码的可读性和可维护性。自定义Taglib通常由一系列标签(Tag)组成,这些标签对应于特定的Java类...

    jsp中自定义Taglib详解

    在Java服务器页面(JSP)开发中,自定义Taglib是一种强大的工具,它允许开发者创建可重用的自定义标签,以提高代码的可读性和可维护性。本文将深入讲解如何在JSP中实现自定义Taglib。 首先,我们来看自定义标签类的...

    自定义taglib的开发.pdf

    在Java Web开发中,自定义Taglib是一种强大的工具,它允许开发者创建自己的标签库,以增强JSP页面的可读性和可维护性。本文将详细解释如何开发自定义taglib,包括实现Tag、IterationTag和BodyTag接口,以及如何添加...

    jsp使用自定义标签taglib分页系列——完整例子

    jsp使用自定义标签taglib分页系列——完整例子

    tp自定义标签

    在ThinkPHP 3.0中,自定义标签通常在`TagLib`类库下创建。首先,你需要在`ThinkPHP/Lib/TagLib`目录下创建一个新的PHP文件,例如`XyTagLib.php`,然后在这个文件中定义一个继承自`Think\TagLib\TagLib`的类,比如`...

    spageview分页taglib demo1版

    自定义TagLib是JSP的一个强大特性,允许开发者创建自己的标签库,以符合特定项目需求。在这个案例中,`spageview`可能包含了一系列与分页相关的标签,如`&lt;spageview:paginate&gt;`、`&lt;spageview:current&gt;`等,这些标签...

    最好的taglib自学网页

    通常,快速学习计划会包含精心设计的步骤,逐步引导学习者理解taglib的基本概念,如TLD(Tag Library Descriptor)文件、自定义标签的创建与调用,以及如何在JSP页面中使用标准和自定义taglib。 【标签】:“taglib...

    深入浅出taglib.pdf

    JSP 技术也允许你自定义 taglib,其实换句话说,taglib 可以看成是对 JSP 标 记的一种扩展,正如 xml 是对 html 的一种扩展一样。taglib 通常定义在tag 标签库中,这种 标签库存放着你自己定义的 tag 标签。简而言之...

    Taglib自定义标签库

    ### Taglib自定义标签库详解 #### 一、Taglib简介与作用 Taglib,即Tag Library(标签库),是JavaServer Pages (JSP) 技术中的一个重要组成部分,允许开发者创建可重用的定制标签,这些标签可以封装复杂的业务...

    java自定义标签、自定义函数、taglib

    3. 在JSP页面中引入标签库:通过`&lt;%@ taglib %&gt;`指令引入TLD文件,然后就可以在页面中使用自定义标签了。 ```jsp &lt;%@ taglib prefix="my" uri="/WEB-INF/mytags.tld" %&gt; ``` 接下来,我们讨论自定义函数。自定义...

    Taglib自定义标签分页

    在Java Web开发中,自定义标签(Taglib)是一种扩展JSP功能的重要方式,它可以将复杂的业务逻辑封装起来,使得视图层更加简洁易读。本项目“Taglib自定义标签分页”提供了一个完整的解决方案,它实现了在网页上进行...

    带有参数的taglib(自定义标签)

    下面我们将详细探讨“带有参数的taglib(自定义标签)”。 ### 一、什么是taglib? Taglib是JSP标准标签库(JSTL)的一部分,它提供了一系列预定义的标签,用于简化JSP页面中的常见任务,如迭代、条件判断等。同时...

    Taglib自定义标签

    【Taglib自定义标签】是JavaServer Pages (JSP)技术中的一种机制,允许开发者创建可重用的自定义标签库,以提高代码的可读性和可维护性。自定义标签能够封装复杂的业务逻辑,使得非Java程序员(如网页设计师)也能...

    struts2中的分页显示

    - **自定义Taglib**:为了简化前端分页导航的实现,可以开发自定义的Taglib,提供更简洁的分页导航展示方式。 ### 示例代码解析 在给定的部分代码中,我们可以看到`Dao`类中实现了基本的数据库连接、查询、关闭等...

    扩展WTP2.0图形化Web编辑器——转换器

    本文将深入探讨如何扩展WebPageEditor的功能,特别是关于自定义Taglib标签的图形化表示。 首先,了解WebPageEditor的基本工作原理至关重要。WebPageEditor支持HTML元素的渲染,并且当检测到项目中包含TLD(Tag ...

    精通Grails:创建自定义插件

    本文内容包括:ShortenUrl插件简介创建...如果您需要在多个地方复制和粘贴相同的GroovyServerPages(GSP)代码段,您就可以创建一个部分模板或一个自定义TagLib。如果您发现有一两个方法在多个控制器或域类中很普遍,您

    struts经典系统

    5. **JSP和Taglib**:在视图层,Struts使用JSP(JavaServer Pages)和自定义Taglib(标签库)来呈现数据。Taglib简化了JSP页面的编写,如Struts的逻辑标签(用于导航控制)和bean标签(用于显示数据)。 6. **分页...

    Struts-menu例子加视频

    3. **JSP和Taglib**:Struts-menu利用JSP(JavaServer Pages)技术来展示菜单,并通过自定义Taglib(标签库)简化页面的开发。开发者可以在JSP页面中嵌入Struts-menu的标签来渲染菜单。 4. **动态菜单**:Struts-...

Global site tag (gtag.js) - Google Analytics