国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

詳解XML與J2EE組合技術的精髓(1)

2019-11-18 16:00:13
字體:
來源:轉載
供稿:網友

  當前,java 2平臺企業版(J2EE)架構在廠商市場和開發者社區中倍受推崇。作為一種工具,可擴展標記語言(xml)簡化了數據交換、進程間消息交換這一類的事情,因而對開發者逐漸變得有吸引力,并開始流行起來。自然,在J2EE架構中訪問或集成XML解決方案的想法也很誘人。因為這將是強大系統架構同高度靈活的數據治理方案的結合。

XML的應用似乎是無窮無盡的,但它們大致上可以分為三大類:

1、簡單數據的表示和交換(針對XML的簡單API(SAX)和文檔對象模型(DOM)語法解析,不同的文檔類型定義(DTDs)和概要(schemas))

2、面向消息的計算(XML-RPC(遠程過程調用),SOAP協議,電子化業務XML(ebXML))

3、用戶界面相關、表示相關的上下文(可擴展樣式表語言(XSL),可擴展樣式表語言轉換(XSLT))

這幾類應用在J2EE架構中恰好有天然的對應:數據表示和交換功能是EJB組件模型中持久化服務(persistence services)的一部分,基于消息的通訊由Java消息服務(JMS)API來處理,而界面表示正是Java服務器頁面(jsp)和Java Servlets的拿手好戲。在本文中,我們將看到當今基于J2EE的應用里,XML是如何在上述幾個方面進行應用的,以及在相關標準的未來版本中這些應用將會如何發展。

基礎:數據的表示和交換

修改甚至寫入某個XML文檔而經常被讀入到某個對象模型中。作為例子,假定我們正處理多種類型的媒體(圖品、視頻、文本文檔等等),并且用下面這個簡單的XML DTD來描述這些媒體的元數據:

<!-- DTD for a hypothetical mediamanagement system --><!-- Media assets are the root of the object hierarchy. Assets are alsohierarchical - they can contain other assets. --><!ELEMENT media-asset(name, desc?, type*, media-asset*, urn)><!-- Metadata about the asset --><!ELEMENT name (#PCDATA)><!ELEMENT desc (#PCDATA)><!ELEMENT type (desc, mime-type?)><!ELEMENT mime-type (#PCDATA)><!ELEMENT urn (#PCDATA)>


以下是一個基于上述媒體DTD的XML文檔,描述了與某個課程講座相關的內容:

<?xml version="1.0" ?><!DOCTYPE media-asset PUBLIC "-//Jim Farley//DTD Media Assets//EN" "http://localhost/Articles/Sun/dtds/media.dtd"><media-asset><name>第14講</name><desc>與第14講相關的所有內容</desc><!-- 內容對象"lecture 14"的一套子組件 --> <media-asset><name>講座的幻燈片</name><type><desc>MS Powerpoint</desc><mime-type>application/vnd.ms-powerpoint</mime-type></type><urn>http://javatraining.org/jaf/E123/lecture-14/slides.PPT</urn></media-asset><media-asset><name>講座的視頻片斷</name><type><desc>RealPlayer streaming video</desc><mime-type>video/vnd.rn-realvideo</mime-type></type><urn>http://javatraining.org/jaf/E123/lecture-14/lecture.rv</urn></media-asset><!-- 講座開始 --><urn>http://javatraining.org/jaf/E123/lecture-14/index.jsp</urn></media-asset>


從Web或者企業級應用的角度看,能以這種方式訪問數據真是一種福音,因為它體現了高度的可移動性,使我們與元數據的實際資源本身隔離。這些資源可能來自一個關系數據庫系統、某種活動媒體服務器或者Web服務器上的一個靜態XML文檔,等等。

假如想把這些數據加載到Java應用中,我們可以從當前眾多的Java語言XML解析器中選用一個,通過它將XML數據裝入一個DOM文檔,最后遍歷文檔,將所有這些數據轉換到我們應用系統的對象模型中。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 太和县| 米易县| 东兰县| 舒城县| 响水县| 若羌县| 蕉岭县| 庆安县| 泸定县| 和硕县| 承德市| 邢台县| 依兰县| 扎兰屯市| 伊宁县| 灵山县| 海南省| 阿合奇县| 邻水| 子洲县| 凤冈县| 黔江区| 乐业县| 慈利县| 平定县| 璧山县| 无极县| 呈贡县| 寿宁县| 水富县| 清涧县| 灯塔市| 桑日县| 泽库县| 文登市| 随州市| 诏安县| 南和县| 苍溪县| 枣庄市| 行唐县|