在JSP中编写你的第一个Tag

时间:2010-01-19 08:57:24   来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:;<title>Hello Tags Page</title></head><body><%@ taglib uri="/WEB-INF/classes/tags/helloTag.tld" prefix="hello" %><hello:helloTag /></body></html>2 编写tagHelloTag.javapackage tags; //注意:必须放在一个包中import java.io.*;import javax.servlet.jsp.*;import javax.servlet.jsp.tagext.*;public class HelloTag extends...
  正文:

编写一个Tag涉及三个步骤,(1)编写JSP(2)编写Tag的java程序(3)编写tag库的描述文件tld(实际是一个XML文件)这三个步骤之间没有顺序约束,下面是一个简单的例子:1 编写HelloTag.jsp<%@page contentType="text/html"%><html><head><title>Hello Tags Page</title></head><body><%@ taglib uri="/WEB-INF/classes/tags/helloTag.tld" prefix="hello" %><hello:helloTag /></body></html>2 编写tagHelloTag.javapackage tags; //注意:必须放在一个包中import java.io.*;import javax.servlet.jsp.*;import javax.servlet.jsp.tagext.*;public class HelloTag extends TagSupport { public int doStartTag() { try { //使用JspWriter获得JSP的输出对象 JspWriter jspWriterOutput = pageContext.getOut(); jspWriterOutput.print("Hello Tag!"); } catch (IOException ioEx) { System.out.println("IOException in HelloTag " + ioEx); } return (SKIP_BODY); }}3 编写helloTag.tld这是Tag库的描述部分:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"><taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>helloTag</short-name> <uri>/WEB-INF/tags/helloTag</uri> <display-name>helloTag</display-name> <small-icon></small-icon> <large-icon></large-icon> <description>simple hello tags tag </description> <tag> <name>helloTag</name> <tag-class>tags.HelloTag</tag-class> <body-content>empty</body-content> <small-icon></small-icon> <large-icon></large-icon> <description></description> <example></example> </tag></taglib>4 注意:通常手工编写XML文件,但是Sun的教程建议使用IDE工具编写自定义tag,比如NetBeans一般,直接把tld文件放到WEB-INF目录中。参考文献:http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JSPIntro10.html


来源:http://www.002pc.com/master/College/Programming/JSP/12044.html

收藏到:

关于《在JSP中编写你的第一个Tag》文章的评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

随机文章

    SQL Error: select * from ***_ecms_article where classid='85' and checked=1 order by rand() limit 10

顶出来的热门

    SQL Error: select * from ***_ecms_article where classid='85' and checked=1 order by diggtop desc,id desc limit 10
站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td