» 网友学堂 » XML教程 » JSP XML的技术纲要(1)
JSP XML的技术纲要(1)
作者:问天 发表时间:2007-2-20 11:34 阅读:291次 在百度搜索相关内容

本文提纲:
*
JSP
, Servlets &;amp; J2EE
*
JSP
&;amp;
XML

* 现状

1
JSP
, Servlets &;amp; J2EE

1.1 J2EE平台

* 具有明确的规范
* 经过了各种 兼容性测试
* 具有很多的 实施参考 (RI)
* 丰富的功能体现在以下方面:
&;#8211;
JSP
/Servlets
&;#8211; JDBC
&;#8211; EJB
&;#8211; JMS
&;#8211; Connector to EIS (J2EE 1.3)
* 具有非常实用的价值


1.2 J2EE所在的Web层

1.3
JSP
/Servlets扮演的角色
(译者注:我把
JSP
和Servelet混在一起了,你可参考本文所附的原文)

* application的入口
* 和外界交互
* 一般都采用HTTP协议
* 客户端可能是以下几种类型:
- Browser
- Applet
- Desktop application (Java Web Start)
- 无线设备
- Server application (B2B)

1.4
JSP
/Servlets的用途
* 可以用于
&;#8211;
JSP
&;amp; Servlet Container
&;#8211; J2EE Container
* Common mindshare
* Best-of-breed implementation
* 已经获得 广泛的支持
* 动态内容生成
* 具有 简单化的构架
* 由container管理
* 经常 使用JavaBeans和Tag Lib

 

1.5 一个例子


<?xml version="1.0">
<%@ page contentType=”text/xml” %>
<%@ taglib prefix="x" uri="..." %>
<wml>
<card id="card1" title="Flowers">
<p>
Flowers available:
<br/>
<x:enumerate inventory="flowers"
id="aFlower">
<%= aFlower.type %>
<br/>
</x:iterate>
<br/>
</p>
</card>
</wml>

1.6 Tag Lib


* 抽象提炼
*
XML
语法
* Run-Time协议
&;#8211; 集成到
JSP
页面中去
&;#8211; 容易组合和定制
&;#8211; 由
JSP
container管理
&;#8211; 简单的协议,用于简单的需求

1.7 各种协同工作的角色


* 站点页面作者
&;#8211; 从数据开发者提供的数据中建立表达presentation
&;#8211; 用户界面方面的专家
&;#8211; 使用Tag Lib和JavaBeans
&;#8211; 使用页面工具
* 开发者
&;#8211; 为页面作者提供数据存取
&;#8211; 服务器端组织的专家
&;#8211; 定义Tag Lib和JavaBeans
&;#8211; IDE

2
JSP
&;amp;
XML



2.1
XML

JSP
技术中的应用



JSP
页面可以:
&;#8211; 使用
XML

&;#8211; 生成
XML

&;#8211; 改变
XML

* 将
JSP
页面作为
XML
文档
*
XML
配置

2.2 使用
XML



* 将
XML
解析到对象(由开发者完成)
&;#8211; 硬编码
&;#8211; 使用Adelard技术
* 解析和复述抽象
* 转变以后插入&;#8211; XSLT

2.3 解析成为对象


<%@ taglib uri="..." prefix="tl" %>
<html>
<tl:parse id="saleBooks" type="BookInventory"
xml="Book_Inventory_URL"/>
<head>...
<body>
<table border="0" width="50%">
<tl:iterate
id ="bk" type="Book"
collection="<%= saleBooks.getBooks()%>" >
<tr>
<td><jsp:getProperty name="bk" property="title"/></td>
</tr>
</tl:iterate>
</table>
</body>
</html>



2.4 解析和复述


<%@ taglib uri="..." prefix="tl" %>
[color=#FFFFFF'][/color]

<html>
<head>...
<body>
<table border="0" width="50%">
<tl:iterateOn
XML
Stream
id="bk" type="Book"
xml="Book_Inventory_URL">
<tr>
<td><jsp:getProperty name="bk" property="title"/></td>
</tr>
</tl:iterateOn
XML
Stream>
</table>
</body>
</html>


2.5 组合Data


2.6 转化后插入

 
<%@taglib uri="http://jakarta.apache.org/taglibs/xsl/1.0"
prefix="x" %>
<html>
<head>...
<body>
<center> Welcome
<x:apply xml="Customer_URL" xsl="store.xsl"/>!
<p>
On Sale Today ...
<p>
<x:apply xml="Inventory_URL" xsl="store.xsl"/>
</center>
</body>
</html>

2.7 制作
XML



* 客户端可以是
&;#8211; Gateway网关
&;#8211; 设备(WAP, XHTML)
*
XML

*
XML
StyleSheet样式表

2.8 Voice
XML
和 WAP Gateway网关

2.9 生成
XML


2.10 XSLT on
XML



2.11
JSP
和XSLT


*
JSP
强化了:
&;#8211; Template &;amp; Java
&;#8211; Multiple Sources
&;#8211; Open-ended Portable Abstraction
* XSLT强化了:
&;#8211; 循环的tree transformation
&;#8211; 有良好定义的输入输出
* XPath



2.12 生成内容用于


Multiple Devices
* One back end source
* 许多客户
* 将总的维护费用最小化
* 达到预期的性能



2.13 多客户的XSLT样式


2.14 多客户的短管道 Short Pipelines


2.15 多客户的组合途径


2.16 在
JSP
技术中使用
XML



*
JSP
s Pages

JSP
页面作为
XML
文档

* Manipulation
&;#8211; Apply XSLT to generate
JSP

* Authoring
&;#8211;
JSP
pages from
XML
objects
* Validation
&;#8211; TagLibraryValidator
* Standarized in
JSP
1.2

*
XML
配置

* Tag Library Descriptor
* Servlet configuration