文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>jsp自定义标记的实现示例

jsp自定义标记的实现示例

时间:2007-04-10  来源:linxh

   为了使用JSP自定义标记,需要定义3个独立的组件: 定义标记功能的标记处理程序类,将XML元素名称映射到标记实现的标记库描述符文件以及使用标记库的JSP文件。

编写标记处理程序类
这个类必须实现javax.servlet.jsp.tagext.Tag接口,通常通过扩展TagSupport或BodyTagSupport类实现。

DateTag.java(标记处理类)

package test;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;
import java.util.*;
import java.text.*;
import java.io.IOException;

public class DateTag extends TagSupport {
    private String format="yyyy年MM月dd日";
    public int doStartTag() throws JspException {
        SimpleDateFormat sdf=new SimpleDateFormat(format);
        Date date=new Date();
        String formatDate=sdf.format(date);
        try{
            JspWriter out;
            out=pageContext.getOut();
            out.println(formatDate);
        }
        catch(IOException e) {
            throw new JspException("I/O error!"+e.getMessage());
        }
        
        return EVAL_BODY_INCLUDE;
    }
    
    public String getFormat() {
        return format;
    }
    
    public void setFormat(String format) {
        this.format = format;
    }
}

这个类的主要功能就是向浏览器输出当前日期字符串。将该文件放入目录
C:\Program Files\Tomcat 5.0\webapps\ROOT\WEB-INF\classes\test中,编译成class文件

创建标记库描述符文件

在目录C:\Program Files\Tomcat 5.0\webapps\ROOT\WEB-INF中新建一文件名为date.tld,内容如下

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
        PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
    "http://java.sun.com/j2ee/dtd/web-jsptaglibrary_1_2.dtd">

<taglib>

  <tlib-version>1.0</tlib-version>
  <jsp-version>1.2</jsp-version>
  <short-name>simple</short-name>
  <uri>http://linxh.cublog.cn</uri>
  <description>
    A simple tab library for the examples
  </description>

  <tag>
  <name>displayDate</name>
  <tagclass>test.DateTag</tagclass>
  <attribute>
  <name>format</name>
  <required>true</required>
  </attribute>
   </tag>
   
</taglib>

 

创建jsp页面,并在其中使用标记

在C:\Program Files\Tomcat 5.0\webapps\ROOT中新建文件tagtest.jsp,内容如下

<%@ taglib uri="http://linxh.cublog.cn" prefix="ttc"%>
<html>
<body>
<ttc:displayDate format="yyyy年MM月dd日"/>
</body>
</html>

重新启动Tomcat,在浏览器访问http://localhost:8080/tagtest.jsp

本文参考了
http://blog.csdn.net/wasingmon/archive/2005/11/25/536631.aspx

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载