打印本文 打印本文  关闭窗口 关闭窗口
利用JSP 2.0开发Web应用程序
作者:采集员 文章来源:来源于网络 点击数: 更新时间:2005/9/10 14:27:56
例7: 标签描述符

    <tag>
<description>Prints this is my first tag</description>
<name>hello</name>
<tag-class>jsp2.examples.simpletag.HelloTag</tag-class>
<body-content>empty</body-content>
</tag>

最后再编写一个使用上述标签的JSP页面文件,见代码示例8。

代码示例8: helloworld.jsp

<%@ taglib prefix="mytag" uri="/WEB-INF/jsp2/jsp2-example-taglib.tld" %>
<HTML>
<HEAD>
<TITLE>Simple Tag Handler</TITLE>
</HEAD>
<BODY>
<H2>Simple Tag Handler</H2>
<P>
<B>My first tag prints</B>: <mytag:hello/>
</BODY>
</HTML>

要运行这个例子:

  1. 复制HelloTg.java并保存到C:Tomcat5.0webappsjsp-examplesWEB-INFclassesjsp2examplessimpletag下;
  2. 使用javac编译HelloTag.java;
  3. 把代码示例7中的标签描述符添加到文件C:Tomcat5.0webappsjsp-examplesWEB-INFjsp2jsp2-example-taglib.tld中的</taglib>之前;
  4. 复制helloworld.jsp并保存到c:Tomcat5.0webappsjsp-examplesjsp2-tutorial目录中;
  5. 用浏览器打开helloworld.jsp。

如果一切正常,应该会看到类似如图4所示的画面。


4:简单标签处理器

标签文件

使用简单标签扩展机制的另一种方法是通过标签文件。标签文件是一种资源文件,网页作者可以利用它抽取一段JSP代码,通过定制功能来实现代码的复用。换句话说,标签文件允许JSP网页作者使用JSP语法创建可复用的标签库。标签文件的扩展名必须是“.tag”。

为说明使用标签文件是多么容易,考虑一下代码示例9。没错,这就是一个标签文件!

代码示例9: greetings.tag

Hello there. How are you doing?

一旦定义了标签文件,就可以在JSP网页的编写中使用这种定制的功能。比如代码示例10中的JSP网页。

代码示例10: chat.jsp

<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
<HTML>
<HEAD>
<TITLE>JSP 2.0 Examples - Hello World Using a Tag File</TITLE>
</HEAD>
<BODY>
<H2>Tag File Example</H2>
<P>
<B>The output of my first tag file is</B>: <tags:greetings/>
</BODY>
</HTML>

要运行这个例子:

  1. 复制标签文件greetings.tags并保存在c:Tomcat5.0webappsjsp-examplesWEB-INF ags 目录下;
  2. 复制JSP网页文件char.jsp并保存在c:Tomcat5.0webappsjsp-examplesjsp2-tutorial 目录下;
  3. 用浏览器打开chat.jsp文件。

如果一切正常,应该会看到类似如图5所示的窗口。


5:简单的标签文件


注意: 重要的是要注意到这里没有为问候标签编写TLD,而是创建了一个标签文件并放在特殊的目录中,然后用taglib指令导入并直接使用它。


另一个标签文件的例子

标签文件可以作为模板使用。考虑代码示例11中的标签文件display.tag,这个例子是根据Tomcat 5.0中的面板的例子改写的。指令attribute类似于TLD中的<attribute>元素,允许声明自定义的动作属性。

代码示例11: display.tag

<%@ attribute name="color" %>
<%@ attribute name="bgcolor" %>
<%@ attribute name="title" %>
<TABLE border="0" bgcolor="${color}"> <TR>
<TD><B>${title}</B></TD>
</TR>
<TR>
<TD bgcolor="${bgcolor}">
<jsp:doBody/>
</TD>
</TR>
</TABLE>

代码示例12给出了使用上述标签的一个简单的JSP页面。

代码示例12: newsportal.jsp

<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
<HTML>
<HEAD>
<TITLE>Another Tag File Example</TITLE>
</HEAD>
<BODY>
<H2>News Portal: Another Tag File Example</H2>
<TABLE border="0"> <TR valign="top">
<TD>
<tags:display color="#ff0000" bgcolor="#ffc0c0"
title="Travel">
Last French Concorde Arrives in NY<br/>
Another Travel Headline<br/>
Yet Another Travel Headline<br/>
</tags:display>
</TD>
<TD>
<tags:display color="#00fc00" bgcolor="#c0ffc0"
title="Technology">
Java for in-flight entertainment<BR>
Another Technology Headline<BR>
Another Technology Headline<BR>
</tags:display>
</TD>
<TD>
<tags:display color="#ffcc11" bgcolor="#ffffcc"
title="Sports">
American Football<BR/>
NBA<BR/>
Soccer<BR/>
</tags:display>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>

要运行这个例子:

  1. 复制文件display.tag并保存在c:Tomcat5.0webappsjsp-examplesWEB-INF ag 下;
  2. 复制文件newsportal.jsp并保存到c:Tomcat5.0webappsjsp-examplesjsp2-tutorial下;
  3. 用浏览器打开newsportal文件。

结果应该会得到与图6类似的画面。


6:把标签文件用作模板

结论

JSP 2.0使得快速开发和维护动态网页比以前更加容易,尽管“Java”一词出现在JSP中,但使用JSP2.0,网页作者无须学习Java程序语言本身,就能开发出全新的动态网页。本文中的例子说明了使用JSP2.0的新特性开发动态网页是多么容易。

更多信息

  • Fast Track JSP 1.2
  • JavaServer Pages Technology
  • JavaServer Pages Specification (JSR 152)
  • The Tomcat 5 Servlet/JSP Container
  • JSP Developers Forum
  • JavaServer Pages Standard Tag Library (JSTL)

上一页  [1] [2] 



打印本文 打印本文  关闭窗口 关闭窗口