网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.让你学习控制住 Web 2.0的方向盘.
.通过WSDL决定Web服务是否支持XML.
.Java中的模式.
.使用JSR-184里的Sprite3D对象(图).
.JAVA 方法重载.
.J2EE的概念.
.J2ME基础入门教程.
.EasyDBO中Java注解配置映射的原理.
.实战体会Java多线程编程的精要.
.初学者入门实践:如何在Tomcat上.
.扩展Eclipse的Java开发工具(二).
.APTFLOW流程设计软件介绍.
.客户端的Java同样精彩.
.对Robocode的创始人MatNelson的一.
.迈向高质量的12个步骤.
.论J2EE开发Web应用程序中的安全认.
.用Tea简化Web开发.
.初学者入门:J2SDK和TOMCAT的安装.
.使用Collections.
.Java核心代码例程之:JNIExample.

JSTL 入门(2):探讨 core——使用定制标记进行流控制和 URL 管理

发表日期:2008-1-5



  顾名思义,jsp 标准标记库(JSP Standard Tag Library,JSTL)core 库为一些基本功能(如,治理限定了作用域的变量和与 URL 交互等)和基本操作(如,迭代和条件化)提供了定制标记。这些标记不仅可以由页面设计人员直接利用,而且还为与其它 JSTL 库相结合从而提供更复杂的表示逻辑奠定了基础。Mark Kolb 在本文中继续对 JSTL 和 core 库进行探讨,研究用标记来协助流控制和 URL 治理。

   通过阅读本系列的第一篇文章,您对 JSTL 有了初步的了解。我们描述了使用其表达式语言(EL)来访问数据和操作数据。正如您所了解的那样,EL 用来为 JSTL 定制标记的属性赋予动态值,因此,它所起的作用与 JSP 表达式一样,为内置操作及其它定制标记库指定请求时的属性值。

  

   为了演示 EL 的用法,我们介绍了 core 库中的三个标记: 用于治理限定了作用域的变量;而 用于显示数据,尤其是显示用 EL 计算出的值。在此基础上,接下来本文把注重力集中在 core 库的其余标记上,这些标记可以大致归为两大类别:流控制和 URL 治理。

  

   示例应用程序

   为了演示 JSTL 标记,我们将使用来自一个工作应用程序的示例,本系列中余下的文章都将使用此应用程序。由于基于 Java 的 Weblog 日渐流行及为人们所熟悉,因此我们将出于此目的使用一个简单的基于 Java 的 Weblog;参阅参考资料以下载该应用程序的 JSP 页面和源代码。Weblog(也称为 blog)是一种基于 Web 的简短注释的日志,这些注释是有关 Weblog 的作者所感爱好的主题,通常带有与 Web 上其它地方的相关文章及讨论的链接。图 1 中显示了该应用程序正在运行时的抓屏。

    JSTL 入门(2):探讨 core——使用定制标记进行流控制和 URL 治理(图一)

点击查看大图

   图 1. Weblog 应用程序

   虽然完整的实现需要二十四个 Java 类,但在表示层中却只涉及 Weblog 应用程序中的两个类,Entry 和 UserBean。这样,对于理解 JSTL 示例而言,只有这两个类比较重要。图 2 显示了 Entry 和 UserBean 的类图。

  

    JSTL 入门(2):探讨 core——使用定制标记进行流控制和 URL 治理(图二)

   图 2. Weblog 应用程序的类图

   Entry 类表示 Weblog 中一个标有日期的项。其 id 属性用于在数据库中存储及检索该项,而 title 和 text 属性则表示该项的实际内容。created 和 lastModified 属性引用了 Java 语言中 Date 类的两个实例,分别用来表示最初创建该项的时间和最后编辑该项的时间。author 属性引用了标识该项的创建者的 UserBean 实例。

  

   UserBean 类存储了有关应用程序的已认证用户的信息,如用户名、全名和电子邮件地址。该类还包含一个用于与相关数据库进行交互的 id 属性。其最后一个属性 roles 引用一列 String 值,这列值标识与相应用户相关的、特定于应用程序的角色。对于 Weblog 应用程序,相关的角色是“User”(所有应用程序用户常用的缺省角色)和“Author”(该角色指定可以创建和编辑 Weblog 项的用户)。

  

   流控制

   由于可以用 EL 替代 JSP 表达式来指定动态属性值,因此页面创作人员无需使用脚本编制元素。因为脚本编制元素可能是引起 JSP 页面中维护问题的主要原因,所以 JSTL 的主要优点就在于提供了这样简单(且标准)的替代方法。

  

   EL 从 JSP 容器检索数据,遍历对象层次结构,然后对结果执行简单的操作。不过,除了访问和操作数据之外,JSP 脚本编制元素的另一个常见用法是流控制。尤其是,页面创作人员常借助 scriptlet 来实现迭代或条件内容。然而,因为这样的操作超出了 EL 的能力,所以 core 库提供了几个定制操作来治理流控制,其形式有迭代、条件化和异常处理。

  

   迭代

   在 Web 应用程序环境中,迭代主要用于访存和显示数据集,通常是以列表或表中的一系列行的形式显示。实现迭代内容的主要 JSTL 操作是 定制标记。该标记支持两种不同样式的迭代:整数范围上的迭代(类似 Java 语言的 for 语句)和集合上的迭代(类似 Java 语言的 Iterator 和 Enumeration 类)。

  

   进行整数范围迭代用到了清单 1 中所示的 标记的语法。begin 和 end 属性要么是静态整数值,要么是可以得出整数值的表达式。它们分别指定迭代索引的初始值以及迭代索引的终止值。当使用 在整数范围内进行迭代时,这两个属性是必需的,而其它所有属性都是可选的。

  

   清单 1. 通过 操作进行数字迭代的语法

      begin="eXPression" end="expression" step="expression">


上一篇:Java语言基础 一 人气:444
下一篇:notyy 的junit教程 人气:1278
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐