在JSP中使用自定義標簽可以達到這樣的目的,事實上,我們所熟知的各類框架基本上都是通過自定義標簽的形式來實現的。
通過使用自定義標簽,我們可以將實現復雜的邏輯在頁面用簡單的標簽來加以展示。下面我們來實現一個非常簡單的自定義標簽,期望通過這個簡單的實例引領各位進入自定義標簽的領域。我們準備定義的這個自定義標簽所實現的功能是在JSP頁面中顯示出版權信息,并且在以后的博文中,我們還會對它進行升級改造。
首先,打開編輯器,創建以下Java代碼:
復制代碼 代碼如下:
package com.yanzhijun;
import java.io.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class CopyRightTag extends TagSupport
{
public int doEndTag()
{
try
{
String copyPre = "顏志軍版權所有 ©2008";
String info = new String(copyPre.getBytes(), "ISO8859_1");
pageContext.getOut().println(info);
}
catch(IOException e){}
return EVAL_PAGE;
}
}
復制代碼 代碼如下:
<?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>yzj</shortname>
<tag>
<name>copyright</name>
<tagclass>com.yanzhijun.CopyRightTag</tagclass>
<bodycontent>empty</bodycontent>
<attribute/>
</tag>
</taglib>
復制代碼 代碼如下:
<%@ taglib uri="WEB-INF/tlds/testlib.tld" prefix="yzj" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>自定義標簽簡單示例</title>
</head>
<body>
<p>這里是正文內容</p>
<yzj:copyright/>
</body>
</html>
新聞熱點
疑難解答