zoukankan      html  css  js  c++  java
  • Struts自定义标签

    一、基本概念

    1、标签(Tag)

    标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的。

    2、标签库(Tag library)

    由一系列功能相似、逻辑上互相联系的标签构成的集合称为标签库。

    3、标签库描述文件(Tag Library Descriptor)

    标签库描述文件是一个XML文件,这个文件提供了标签库中类和JSP中对标签引用的映射关系。它是一个配置文件,和web.xml是类似的。

    4、标签处理类(Tag Handle Class)

    标签处理类是一个Java类,这个类继承了TagSupport或者扩展了SimpleTag接

    口,通过这个类可以实现自定义JSP标签的具体功能。

    二 标签开发

    1.简单的标签开发

      1.1 写处理类

        

     1 1package com.dongjj.tag;
     2 2
     3 3import javax.servlet.jsp.JspException;
     4 4import javax.servlet.jsp.PageContext;
     5 5import javax.servlet.jsp.tagext.Tag;
     6 6
     7 7public class TimeTag implements Tag {
     8 8    protected PageContext pageContext;
     9 9    private Tag parent;
    1010
    1111    // ----标签开始时调用此方法-------
    1212    public int doStartTag() throws JspException {
    1313        try {
    1414            pageContext.getOut().println("Now:" + new java.util.Date());
    1515        }
     catch (Exception e) {
    1616            throw new JspException(e.getMessage());
    1717        }

    1818        return SKIP_BODY;
    1919    }

    2020
    2121    // ----标签结束时调用此方法-------
    2222    public int doEndTag() throws JspException {
    2323        return EVAL_PAGE;
    2424    }

    2525
    2626    // 实现
    2727    public void release() {
    2828    }

    2929
    3030    // 实现
    3131    public void setPageContext(PageContext pageContext) {
    3232        this.pageContext = pageContext;
    3333    }

    3434
    3535    // 实现
    3636    public Tag getParent() {
    3737        return parent;
    3838    }

    3939
    4040    // 实现
    4141    public void setParent(Tag parent) {
    4242        this.parent = parent;
    4343    }

    4444
    4545}

    1.2 编写tld文件 放在WEB-INF目录下

    Code

       1.3 在在Web应用的web.xml文件中声明标签库引用 web.xml version="2.4"的不用引入也可,能在路径下搜索

    1<taglib>
    2  <taglib-uri>http://www.cnblogs.com/xd502djj/tags</taglib-uri>
    3  <taglib-location>/WEB-INF/mytags.tld</taglib-location>
    4  </taglib>
    5  <taglib-uri>对应tld文件中的<uri><taglib-location>指出tld文件的位置

    1.4 写jsp

    1<%@taglib uri="http://www.cnblogs.com/xd502djj/tags" prefix="mt"%>
    2
    3<h1 align="center"><mt:time/></h1>

    调用 在页面上显示如下

    Now:Tue Mar 24 16:33:50 CST 2009

  • 相关阅读:
    20100720 14:14 转:BW十日谈之标准数据源
    BW会计年度期间转换出错
    SQL Server 2005 Logon Triggers 详细介绍
    作业输出文档维护
    windows 系统监视器 以及建议阀值
    linkedserver 的使用
    DAC 连接数据库需要做些什么
    SQL Server 2008新特性 Merge 详细见联机手册
    【20110406】提高数据库可用性需要注意的问题
    索引迁移
  • 原文地址:https://www.cnblogs.com/xd502djj/p/1420488.html
Copyright © 2011-2022 走看看