随笔 - 40, 文章 - 0, 评论 - 20, 引用 - 0
数据加载中……

JSP标签的使用方法


如要在JSP页面上有一个链接,Url值是通过参数输入的,用JSP标签的实现步骤(当然实际中不会用标签来完成这么简单的功能):

<一>.先从javax.servlet.jsp.tagext.BodyTagSupport派生一个新的类,并重载它的doStartTag()方法.如果是想要传入参数的话,则还要在Bean中加入想要的变量,如这里要传入一个url值,所以添加一个参数:linkUrl. 最后代码如下:

package com.moonsoft.jsptag;
import javax.servlet.jsp.tagext.BodyTagSupport;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.JspException;
public class UrlLinkTag extends BodyTagSupport  {
  private String linkUrl;
  public UrlLinkTag() {
  }
  public String getLinkUrl() {
    return linkUrl;
  }
  public void setLinkUrl(String linkUrl) {
    this.linkUrl = linkUrl;
  }
  public int doStartTag() throws JspException{
    try {
      this.pageContext
          .getOut().print("<a href=\'"+linkUrl+"\' >"+linkUrl+"</a>");
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
    return 0;
  }
}

<二>新建一个tld文件,内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
 "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
 <taglib>
        <tlibversion>1.0</tlibversion>
 <jspversion>1.1</jspversion>
 <shortname>buttons</shortname>
 <uri>http://www.borland.com/jbuilder/internetbeans.tld</uri>
 <info>
 JSP tag extensions for InternetBeans Express
  </info>
    <tag>
 <name>urllink</name>
 <tagclass>com.moonsoft.jsptag.UrlLinkTag</tagclass>
 <bodycontent>jsp</bodycontent>
 <attribute>
  <name>linkUrl</name>
  <required>true</required>
  <rtexprvalue>true</rtexprvalue>
 </attribute>
    </tag>
   </taglib>
  
<三>在web.xml中引入这个taglib,在其中加入:

<taglib>
    <taglib-uri>/moon</taglib-uri>
    <taglib-location>/WEB-INF/classes/com/moonsoft/jsptag/UrlLinkTag.tld</taglib-location>
</taglib>


<四>在jsp中引入这个标签
<%@ taglib uri="/moon" prefix="mylinkurl" %>
这里uri是和web.xml中配置的taglib-uri对应的,prefix值只是在本jsp页面作为标示用.

下面就可以在jsp中使用这个标签了:

<mylinkurl:urllink linkUrl="http://www.baidu.com" />

这里面的mylinkurl为在本jsp页面中设置的prefix值,urllink为tld文件中tag name,linkUrl为输入的参数

这样就在jsp页面上加入了一个:
<a href='http://www.baidu.com' >http://www.baidu.com</a>链接

posted on 2005-12-29 13:47 月亮 阅读(1424) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: