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

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

使用CMP2和XML處理動態數值對象

2019-11-17 06:20:41
字體:
來源:轉載
供稿:網友

  在EJB 2.0局部引用和容器治理關系出現之前,通常把實體EJB用于模型粗粒度域對象。這主要是由于與遠程通信有關系統開銷并阻止了細粒度訪問企業層的客戶層對象。粗粒度設計的性能通過實現數值對象而促進改善,壓縮所有的數據也就是說在客戶層和企業層之間傳遞數據。

使用有大量域對象的復雜系統,即使這么樣能提供一個第一流的和高度執行設計,這個設計導致在系統內出現過多的數值對象。這同樣也創建在企業層和客戶層之間的緊密連接。同樣,在EJB出現之間,bean提供者不得不明確地提供用于維護域對象之間聯接的程序。在一個有在域對象之間的復雜關系的情況中,數值對象的設計變得很復雜。在使用EJB開發企業應用程序的過程中,容器治理關系和局部引用的出現開啟了令人興奮的新途徑。在本文中,我將帶你使用EJB 2.0的強大方法連同bean組件和JAXP創建動態的基于數據結構的xml,可以在你的企業層和表現層之間傳遞信息。

  從企業層到客戶層傳遞數據的過程中使用XML,可以幫助你實現在的應用程序中的多種寬松連接;然而,當你把新的域對象添加到實體型中時,你可能需要添加用于創建新DOM構架的類來添加該實體。在文中,我們將開發一個框架來動態地遍歷容器治理和給定的局部EJB有關的域,并且創建一個可以在應用程序的多個層之間傳遞的XML件。這個方法將有以下優點∶

  在企業層和客戶層之間促進寬松連接。

  便于治理域對象之間關系。

  從系統中除去復雜數值對象因為XML是由動態地遍歷CMP和CMR域產生的,當它們添加新對象到域模型中時,bean提供者不必創建新的用來創建新的DOM構架的對象類。

  EJB 2.0局部引用促進訪問bean組件;bean組件與局部引用結合可以含于與其他的被容器治理的bean的關系。舉例來說,在一個幫助系統中,UserEJB可以有與ServiceRequestEJB的一到多雙向關系和與PRodUCtEJB的一到一的單向聯系以及與ServiceRequestHistoryEJB的一到的雙向關系。UserEJB同時可以有與PhoneEJB一到多的雙向關系。這樣,使用EJB 2.0局部引用和容器治理關系,你可以設計一套復雜的有關體。容器治理持久性和關系域是在bean類中使用抽象存取程序方法定的。用于關系域的存取程序方法要么返回一個集合要么返回定義這個系的bean的本機接口,這還取決于這個關系集的容量。這些存取程序法可以通過bean組件的本機接口展示。EJB 2.0的深入研究超出了本文范圍,請參閱EJB 2.0的規范。

  一個效率高的設計模式應該通過外觀組件展示你的應用程序的使用案例并且不準從客戶層中直接訪問實體組件。回到我們的幫助系統的例子中來,其中的一個使用案例是取得給定用戶的具體資料。外部組件可以查找需要的用戶實體組件,并且通過容器治理持久性與關系域取得所需數據并把它返回表現層。

  用于數據傳送對象的一個顯而易見的選擇就是簡單的java bean。UserBean可能有表示持久性與關系域的屬性。這種關系域要么是java.util.Collection要么是其他的取決于這種關系的bean組件。UserBean可能有ServiceRequestBean和PhoneBean集。ServiceRequestBean可能有一個ProductBean和許多ServiceRequestHistory bean組件。此外,這些bean組件還可能還有簡單的String或者表現容器治理持久性域的基本屬性。這個選擇的主要的不利之處就是使你的實體模型更加復雜,使你的數據傳送對象bean層次更加復雜,還將在你的服務(企業)層和消費(表現)層之間創建緊密連接。研究一下這個關系的復雜的層次,一個更好的選擇是使用XML DOM對象作為數據傳送對象。你的組件將產生oeg.w3c.dom.Document對象類型并且你的表現組件使用XML的jsp自定義標記和XSLT文件來“消費”它們。


  現在,下一個問題是∶怎么從CMP局部bean引用中創建XML文件?我們可以使用一個基于用于創建不同的類型的DOM組件的方法的工廠;然而,這將創建過多的“工場”組件,并且你可能需要添加新的"工場"組件作為你的實體模型擴展。我們需要的是一個可以使用實體局部對象,引導容器治理關系和創建動態DOM構架的公用程序。這個公用程序將負責在雙向關系中循環引用,以避免無限的循環和深入導航關系元素。

  接下來我們將演示一個可以提供這個功能的公用程序類。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃园市| 城口县| 逊克县| 珲春市| 新余市| 宜城市| 安塞县| 哈巴河县| 凤山县| 广南县| 习水县| 武宣县| 泗洪县| 邯郸市| 民勤县| 昌宁县| 商都县| 盐津县| 河东区| 长沙县| 吕梁市| 西林县| 涿州市| 民县| 勐海县| 嘉义市| 哈尔滨市| 凤冈县| 永德县| 泾源县| 繁昌县| 霞浦县| 比如县| 潼南县| 惠水县| 平武县| 天长市| 黄龙县| 扶余县| 白水县| 莱阳市|