版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、JSP 最佳实践: 使用JSTL来更新JSP页面标准化JSTL标记为您的Web页面带来更多的功能JSP 标准标记库(Standard Tag Library,JSTL)是一组以标准化格式实现许多通用的Web站点功能的定制标记。在 JSP 最佳实践这一部分,Brett McLaughlin将向您介绍JSTL,阐述如何转变JSP页面来使用高功能性的标记。0 评论Brett McLaughlin (), 作者, O'Reilly和同事2003 年 7 月 31 日· 内容在 IBM Bluemix 云平台上开发并部署您的下一个应用。开始您的试用JSP技
2、术的优势之一在于其定制标记库工具。除了核心JSP标记,如 jsp:include 之外,定制标记库工具使您能够创建唯一的标记来描述以站点或应用程序为导向的操作。一旦您创建了定制标记库(简称taglib),当您扩展项目或转向另一个项目时您可以重复使用这些标记。您还可以将taglib传递给其它开发人员,从而他们可以在自己的网站上使用,或者在您Web应用程序的其它部分使用。在这一系列的下一部分,我将向您展示如何创建自己的定制标记库,但现在我们将重点关注JSP标准标记库(JSTL)。JSTL实际上是一组标准化用于JSP 1.2的定制标记库。许多JSTL标记都与核心JSP标记类似,但
3、它们可以提供更多的功能。例如, c:import 标记与我们在前一部分中介绍的 include 和 jsp:include 指令极其类似(见 参考资料)。 与include指令一样, c:import 可以帮助您读取(populate)您Web站点或Web应用程序的页面,但其功能性扩展超出了核心JSP标记的范畴。在 JSP最佳实践这一部分,我们将使用 c:import 标记来了解如何将Web页面从JSP转变成JSTL。但是,在开始使用新标记之前,我们需要将JSTL装载到Web
4、容器中。JSTL 设置虽然JSTL计划捆绑到下一波Web容器中,但您目前必须自己进行设置。按以下步骤操作以将JSTL装载到Web容器中:1. 从 下载 jakarta-taglibs-standard-current.tar.gz 。2. 解压缩下载的文件。3. 将 jakarta-taglibs/standard-1.0.3/tld/c.tld 拷贝到 WEB/INF/tlds 目录。4. 将 jakarta-taglibs/standard-1.0.3/lib 中的所有JAR文件拷
5、贝到 WEB-INF/lib 目录。5. 将以下显示的条目添加到 WEB-INF/web.xml 部署描述符中。 <taglib> <taglib-uri></taglib-uri> <taglib-location>/WEB-INF/tlds/c.tld</taglib-location> </taglib>6.7. 重启Web容器。这是JSTL设置的速成版本,它可以满足大多数情况。更详细信息请参阅 参考资料部分。回页首联合 JSTL标记如果您希望在JSP页面上使用任何J
6、STL标记,您首先必须在该页面上声明标记库前缀和URL。我们正在使用核心JSTL库,因此使用的标准前缀是 c (代表 核心)。表1显示增加了 taglib 指令的Web站点索引文件:表1:索引文件的taglib指令<% page language="java" contentType="text/html" %><% taglib prefix="c" uri="" %><html><head> <title&g
7、t;newI</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link href="/styles/default.css" rel="stylesheet" type="text/css" /></head><body><jsp:include page="header.jsp" flush
8、="true"> <jsp:param name="pageTitle" value="newI"/> <jsp:param name="pageSlogan" value=" " /></jsp:include><% include file="/navigation.jsp" %><jsp:include page="bookshelf.jsp" flush="true"
9、/><jsp:include page="/mt-blogs/index.jsp" flush="true" /><% include file="/footer.jsp" %></body></html>在向JSP页面添加了JSTL taglib之后,您可以使用核心库中的任何标记,只需把标记的前缀改为 c 。为了了解这一流程,我们将尝试把页面从jsp:include 标记转换成 c:import 标记。 表2显示了本系列第二部分介
10、绍的 jsp:include 实例(见 参考资料)转为使用新 c:import 标记。表2:转为JSTL<% page language="java" contentType="text/html" %><% taglib prefix="c" uri="" %><html><head> <title>newI</title> <meta http-equiv="Content-
11、Type" content="text/html; charset=iso-8859-1" /> <link href="/styles/default.css" rel="stylesheet" type="text/css" /></head><body><jsp:include page="header.jsp" flush="true"> <jsp:param name="pageTitl
12、e" value="newI"/> <jsp:param name="pageSlogan" value=" " /></jsp:include><% include file="/navigation.jsp" %><c:import url="bookshelf.jsp" /><c:import url="/mt-blogs/index.jsp" /><% include file=&quo
13、t;/footer.jsp" %></body></html>这一段程序与前面一段JSP程序之间唯一的区别是我们在c中使用了 url 属性,而不是在 jsp:include 中使用 page 属性。非常简单,是不是?做一个娱乐性练习,尝试自己转换一个页面,只需运行我们在“使用jsp:include管理动态内容”(本系列第二部分,参阅 参考资料)中使用的JSP程序代码并将其转换成JSTL,如表2所示。如果您进行了仔细研究,您可能注意到我避免改变表2中的header inclusion程序
14、代码。header程序代码包含参数,它增加了在此讨论的复杂性。在 JSP 最佳实践的下一部分,您将了解如何使用 c:import 来传递参数。我还将向您介绍 c:import 标记的一些特性,它可以提供比简单的jsp:include 标记更多的功能。那时,您可以实践此处了解到的简单的JSTL转换技术,到时候见!参考资料· 您可以参阅本文在 developerWorks 全球站点上的 英文原文.· 从JSP技术开始? 参阅Brett McLaughlin撰写的 JSP最佳实践第一部分 。
15、您可以参阅include.jsp 表,在本系统第二部分“ JSP 最佳实践:用 jsp:include 控制动态内容"我们将它转换成JSTL。· 您可能还希望考虑使用JSP-标准IDE。您可以选择:· JEdit· NetBeans· Eclipse· Noel Bergman的“ JSP 标记库:着意设计的更好的可用性”( developerWorks, December 2001)介绍定制标记库工具,它可以用于创建JSTL。· Mark Kolb的“ JSTL 入门:表达式语言” ( developerWorks, February-May 2003)全面介绍JSP标准标记库。· JSP技术的指导性介绍,参阅Noel Bergman的“ JavaServer页面技术简介”指南(developerWorks, August 2001)。· For the nitty-gritty details of JSP technology, your best bet is to read the JSP specification
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南京工业职业技术大学单招职业技能测试题库附答案详解(完整版)
- 2026年伊犁职业技术学院单招职业适应性测试题库附参考答案详解(考试直接用)
- 2026年南京工业职业技术大学单招职业倾向性测试题库有完整答案详解
- 2026年保险职业学院单招职业倾向性测试题库含答案详解(培优a卷)
- 2026年内蒙古兴安盟单招职业适应性考试题库含答案详解(精练)
- 2026年南充文化旅游职业学院单招职业技能考试题库附答案详解(典型题)
- 2026年六盘水幼儿师范高等专科学校单招职业倾向性考试题库附答案详解(a卷)
- 2026年信阳职业技术学院单招职业技能考试题库及参考答案详解(新)
- 2026年南昌影视传播职业学院单招职业适应性考试题库附参考答案详解(综合卷)
- 2026年南昌应用技术师范学院单招职业适应性测试题库含答案详解(综合卷)
- 八下语文必读名著《经典常谈》考点梳理
- 北京市东城区2025-2026学年高三上学期期末考试地理试卷
- 幽门螺杆菌对甲硝唑耐药的分子机制
- 82-2手榴弹使用课件
- 2025高考新高考II卷英语口语真题试卷+解析及答案
- 孤残儿童护理员中级
- 职业技术学校教学质量评价标准
- 广西安瑞新材料科技有限公司FPC柔性线路板和新材料项目(重大变动)环境影响报告表
- 2025年学历类自考专业(小学教育)课程与教学论-小学数学教学论参考题库含答案解析(5套试卷)
- 公私联动考核管理办法
- 国家中医药管理局《中医药事业发展“十五五”规划》全文
评论
0/150
提交评论