freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ejb30的分布式網(wǎng)上購物系統(tǒng)-文庫吧

2025-07-21 22:53 本頁面


【正文】 據(jù)。(3) EJB 通過引入本地接口解決遠(yuǎn)程接口造成的開銷和按值傳遞的缺陷。只有運(yùn)行在 J2EE 容器內(nèi)的客戶才能通過其本地接口訪問 EJB,按引用傳遞的方法調(diào)用允許組件之間更加有效地進(jìn)行交換操作。 還引入了新型的 EJB——消息驅(qū)動(dòng)Bean( MessageDriven Bean,MDB),從而能夠參與異步消息系統(tǒng)。實(shí)體 Bean 得到了容器管理的關(guān)系(ContainerManaged Relationship,CMR)的支持,它允許 Bean 的開發(fā)者聲明式地指定由 EJB 容器管理的實(shí)體 Bean 之間的持久化關(guān)系。另外,還引入了 EJB 查詢語言(Enterprise JavaBeans Query Language,EJB QL),它使開發(fā)者具有了使用類似 SQL 那樣的語言來查詢實(shí)體 Bean 實(shí)例的功能。(4) 添加了 Web 服務(wù)的支持,允許會(huì)話 Bean 暴露端點(diǎn)接口,添加了允許按照指定的時(shí)間或者時(shí)間間隔調(diào)用 EJB 的計(jì)時(shí)器服務(wù)。 還提供了擴(kuò)展的 EJB QL 功能,并且引入 XML schema 來替換定義了 部署描述文件的 DTD。(5) EJB 最重要的改動(dòng)是實(shí)體 Bean 被替換成 POJO,現(xiàn)在被稱為實(shí)體。它可以運(yùn)行在 EJB 容器的外部,因此在實(shí)體類本身中不需要專門的接口或者 EJB 專有的代碼。會(huì)話 Bean 不再需要主接口或者 EJB 專有的組件接口,雖然在邏輯上它們?nèi)匀恢С诌h(yuǎn)程和非遠(yuǎn)程(普通)接口。這兩個(gè)改動(dòng)和很多其它改動(dòng)都符合 EJB 以簡化的開發(fā)模型為中心的新的設(shè)計(jì)理念。表 列出了 EJB 規(guī)范的歷史版本、發(fā)布時(shí)間及其相應(yīng)特性。表 EJB 歷史版本版本號(hào) 發(fā)布時(shí)間 新增特性 3/24/1998 ? 定義了 EJB 和 EJB 容器的作用,實(shí)現(xiàn)與互動(dòng)? 提供了最早的開發(fā)者與用戶視圖 12/17/1999 ? 開始采用 XML 部署描述符,默認(rèn)的 JNDI 上下文以及可支持 IIOP 的 RMI? 安全機(jī)制由角色(Role)驅(qū)動(dòng),而非方法? 支持實(shí)體類,且必須在應(yīng)用中實(shí)現(xiàn) 8/22/2022 ? 制定了構(gòu)建面向?qū)ο笊虅?wù)應(yīng)用的標(biāo)準(zhǔn)組建結(jié)構(gòu)? 支持構(gòu)筑使用不同開發(fā)工具所開發(fā)之組件的聯(lián)合應(yīng)用部署? 在多線程,連接池,事務(wù)管理等方面對(duì)用戶透明化? 使符合“一次寫成,多次運(yùn)行”的 Java 思想基于 的分布式網(wǎng)上購物系統(tǒng) 3? 關(guān)注企業(yè)級(jí)應(yīng)用生命期間的開發(fā),部署,運(yùn)行等動(dòng)作? 定義了不同開發(fā)工具所需遵守的契約,以便其產(chǎn)品能夠在運(yùn)行期交互? 支持與現(xiàn)行系統(tǒng)兼容,開發(fā)者可以擴(kuò)展現(xiàn)有產(chǎn)品以使之支持 EJB? 與其它 Java API 兼容? 支持 EJB 與 Java2 平臺(tái)企業(yè)版或者其他非 Java 應(yīng)用程序之間的互操作性? 支持與 CORBA 兼容的 RMIIIOP 11/24/2022 ? Web 服務(wù):可將無狀態(tài)會(huì)話 bean 暴露為 Web 服務(wù);EJB可通過引用訪問 Web 服務(wù)? EJB 定時(shí)器服務(wù):提供一種新的基于定時(shí)器的事件驅(qū)動(dòng)方式,可供消息驅(qū)動(dòng) bean 作為消息源使用? 增加了消息目的地? 進(jìn)一步豐富了 EJB 查詢語言,新增支持 ORDER BY、AVG、MIN、MAX、SUM、COUNT 和 MOD? 使用 XML schema 代替 DTD 以定義部署描述符 5/2/2022 ? 全面采用 Java 注釋代替部署描述符(后者仍可使用,并且具有更高優(yōu)先級(jí))? 把 版的實(shí)體 Bean 改為由 JPA 支持 EJB 的新生由于 IBM 和 Sun Microsystems 等 EJB 提倡者力推其前景,起初一些大公司紛紛采用 EJB 部署他們的系統(tǒng)。然而隨后各種問題便接踵而至,對(duì) EJB 的惡評(píng)短時(shí)間內(nèi)激增。對(duì)于初學(xué)者,EJB 的 API 顯得太過困難。對(duì)于許多程序員來說,書寫那些必須拋出特定異常的接口并將 Bean 類作為抽象類實(shí)現(xiàn)的做法既不直觀也不正常。當(dāng)然,EJB 所被賦予的使命,如對(duì)象關(guān)系映射和事務(wù)管理確實(shí)有其天然復(fù)雜性,但其 API 之復(fù)雜還是令開發(fā)人員們望而卻步,一些人開始懷疑 EJB 除了引入了復(fù)雜的實(shí)現(xiàn)手段以外似乎并未帶來什么實(shí)際好處。另外,實(shí)際運(yùn)用中發(fā)現(xiàn),如果使用 EJB 來封裝業(yè)務(wù)邏輯會(huì)帶來性能上的下降。這是因?yàn)樽钤绲?EJB 規(guī)范只允許客戶端通過特定協(xié)議(如 CORBA)進(jìn)行遠(yuǎn)程方法調(diào)用來調(diào)用,即使大部分實(shí)際應(yīng)用根本就不需要分布式計(jì)算。直到 EJB 才引入了本地接口,以支持可以開發(fā)不通過網(wǎng)絡(luò)就能直接本地調(diào)用的 EJB 系統(tǒng)。盡管如此,EJB 的廣泛普及仍然為其復(fù)雜度所制約。盡管已經(jīng)有一些高質(zhì)量的集成開發(fā)工具可以協(xié)助開發(fā)人員通過自動(dòng)編碼解決一部分重復(fù)作業(yè),但這并不能降低學(xué)習(xí)此項(xiàng)技術(shù)的難度。另一方面,“草根階層”的編程愛好者們發(fā)起了一場旨在使用 “輕量級(jí)”技術(shù)以代替復(fù)雜的 EJB 的運(yùn)動(dòng)。這些技術(shù)包括 Hibernate(用于提供數(shù)據(jù)持基于 的分布式網(wǎng)上購物系統(tǒng) 4久化和對(duì)象—關(guān)系映射)及 Spring 框架(用于封裝業(yè)務(wù)邏輯)。盡管它們不像 EJB 那樣有巨頭支持,但其在庶民間卻更加流行,并且也被一些對(duì) EJB 深感失望的企業(yè)所采用。EJB 規(guī)范起初的一個(gè)主要價(jià)值——對(duì)分布式應(yīng)用進(jìn)行事務(wù)管理——在隨后的實(shí)踐中被一致認(rèn)為幾乎沒能派上用場。對(duì)于企業(yè)級(jí)應(yīng)用來說,Spring 和 Hibernate 等簡化框架更加實(shí)用。因此,EJB 規(guī)范(JSR 220)為了迎合這個(gè)趨勢相比于其前輩進(jìn)行了一次激進(jìn)的大跳躍。受到 Spring 的影響,EJB 也使用了所謂的“傳統(tǒng)簡單 Java 對(duì)象(POJO )” ;同時(shí),支持依賴注入來簡化全異系統(tǒng)的集成與配置。Hibernate 的創(chuàng)始人Gavin King 參與了這一新版規(guī)范的制訂,并對(duì) EJB 大加提倡。Hibernate 的許多特性也被引入到 Java 持久化 API 當(dāng)中,從而取代原來的實(shí)體 Bean。EJB 規(guī)范大幅采用Java 注解(annotation)來對(duì)代碼進(jìn)行元數(shù)據(jù)修飾,從而消減了此前 EJB 編程的冗雜性。相應(yīng)地,EJB 幾乎成為了一個(gè)全新的 API,與此前的數(shù)版可謂毫無相似度可言。 從 Web 層訪問 EJB DAO 和 EAO 模式EJB 組件設(shè)計(jì)是 Java EE 應(yīng)用設(shè)計(jì)中的核心模塊。它強(qiáng)調(diào)的是可復(fù)用性、可維護(hù)性和可移植性等。當(dāng)開發(fā)者設(shè)計(jì) EJB 時(shí),最困難的工作就是要選擇一個(gè)正確的體系結(jié)構(gòu),或者一個(gè)正確的邏輯層的劃分。目前,EJB 的設(shè)計(jì)模式有幾十種,如何選擇適合自己項(xiàng)目的模式是 EJB 設(shè)計(jì)的關(guān)鍵問題,也是最難解決的問題。在 Hibernate 這樣的 ORM 框架開始流行之前,很多應(yīng)用程序開發(fā)者直接使用JDBC 開發(fā)數(shù)據(jù)庫訪問代碼。在業(yè)務(wù)邏輯層直接使用 JDBC 導(dǎo)致了若干維護(hù)問題,因此出現(xiàn)了 DAO 模型,其目的是從業(yè)務(wù)邏輯去除數(shù)據(jù)庫訪問代碼。DAO 設(shè)計(jì)模式一度非常流行,不僅用于 JDBC,也用于 ORM 框架和 CMP 實(shí)體 Bean。DAO 是 J2EE 應(yīng)用的重要組件,它隱藏了底層的數(shù)據(jù)庫訪問細(xì)節(jié)。DAO 層也是J2EE 應(yīng)用分層中的重要分層,該層向上提供通用的數(shù)據(jù)訪問接口。通過 DAO 組件,可實(shí)現(xiàn)業(yè)務(wù)邏輯和數(shù)據(jù)庫訪問的分離,避免業(yè)務(wù)邏輯與具體的數(shù)據(jù)庫訪問實(shí)現(xiàn)耦合。對(duì)于 J2EE 應(yīng)用而言,數(shù)據(jù)庫是相對(duì)穩(wěn)定的部分,其 DAO 組件依賴于數(shù)據(jù)庫系統(tǒng),提供數(shù)據(jù)庫訪問的接口,只要數(shù)據(jù)庫沒有重構(gòu),則 DAO 層通常無需改寫。DAO 層也分隔了數(shù)據(jù)庫與業(yè)務(wù)邏輯層,使業(yè)務(wù)邏輯層更加專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),而無需理會(huì)持久層訪問實(shí)現(xiàn)。DAO 模式是 J2EE 設(shè)計(jì)模式中的一種核心設(shè)計(jì)模式。DAO 模式可抽象出數(shù)據(jù)訪問方式,在訪問數(shù)據(jù)源時(shí),完全感覺不到數(shù)據(jù)源的存在。DAO 將數(shù)據(jù)訪問集中在獨(dú)立的一層,因?yàn)樗械臄?shù)據(jù)訪問都由 DAO 代理,這層獨(dú)立的 DAO 就將數(shù)據(jù)訪問的實(shí)現(xiàn)與系統(tǒng)的其余部分剝離,將數(shù)據(jù)訪問集中使得系統(tǒng)更具可維護(hù)性。DAO 還降低了層的復(fù)雜程度?;? 的分布式網(wǎng)上購物系統(tǒng) 5 Session Facade 模式Session Facade 模式出現(xiàn)的主要原因之一是減少以前 EJB 版本中遠(yuǎn)程調(diào)用的數(shù)量,對(duì)于 EJB 也是如此。在 EJB 中,客戶端遠(yuǎn)程訪問實(shí)體 Bean,然而遠(yuǎn)程訪問有其代價(jià),即降低性能并且緊急耦合客戶端和域數(shù)據(jù)。通過會(huì)話 Bean 外端,可以在本地使用實(shí)體 Bean 并且把會(huì)話 Bean 暴露給客戶端。這樣顯著減少了 RMI 調(diào)用的數(shù)量,并且加強(qiáng)了客戶端和實(shí)體 Bean 之間的松散耦合,因此改進(jìn)了代碼的可維護(hù)性。Facade 模式為子系統(tǒng)中的一套接口提供了一個(gè)統(tǒng)一的接口。Facade 定義了一個(gè)更高層次的接口,使子系統(tǒng)更容易使用。在 EJB 設(shè)計(jì)中,Session Facade 是應(yīng)用最廣泛的設(shè)計(jì)模式。它應(yīng)用會(huì)話 Bean 來實(shí)現(xiàn) Facade 模式的思想,把構(gòu)成子系統(tǒng)的一套業(yè)務(wù)對(duì)象“包裝”在會(huì)話 Bean 中。這樣,Session Facade 作為客戶端訪問業(yè)務(wù)對(duì)象的攔截器,屏蔽了業(yè)務(wù)對(duì)象。EJB 客戶端訪問會(huì)話 Bean 來代替訪問業(yè)務(wù)對(duì)象,當(dāng)一個(gè) EJB 客戶端需要調(diào)用多個(gè)業(yè)務(wù)對(duì)象的方法時(shí),它只需要進(jìn)行一次粗粒度的遠(yuǎn)程方法調(diào)用,將請(qǐng)求送給 Session Facade,再由 Session Facade 通過本地方法調(diào)用,調(diào)用相應(yīng)的業(yè)務(wù)對(duì)象,執(zhí)行其方法。這樣就減輕了網(wǎng)絡(luò)負(fù)載,提高了系統(tǒng)性能。并且當(dāng)業(yè)務(wù)對(duì)象的方法改動(dòng)時(shí),只需要修改會(huì)話 Bean,而客戶端可以保持不變。這就減少了客戶端和業(yè)務(wù)對(duì)象之間的耦合度,同時(shí)客戶端也不必管理事務(wù)的細(xì)節(jié)。 從 Web 層訪問會(huì)話 Bean我們知道,可以使用會(huì)話 Bean 構(gòu)造應(yīng)用程序的業(yè)務(wù)邏輯并且從企業(yè)應(yīng)用程序的表現(xiàn)層或 Web 層訪問會(huì)話 Bean。表現(xiàn)層和 Web 層可以通過依賴注入或 JNDI 查找或訪問會(huì)話 Bean,但只有受管理類(如 Servlet)才支持依賴注入,其生命周期由容器管理。不受管理的應(yīng)用程序組件必須使用 JNDI 查找才能獲得會(huì)話 Bean 的引用。不管通過哪種方式訪問 EJB,在獲得 EJB 引用之后,我們都會(huì)通過相同方式與它們進(jìn)行交互。 論文內(nèi)容安排本文第一章首先介紹了些必要的背景知識(shí),主要包括 EJB 規(guī)范的發(fā)展過程和 EJB 技術(shù)的簡單介紹。第二章介紹了開發(fā)使用到的技術(shù):Java、EJB、Servlet 、JSP 和DOM 技術(shù)。第三章對(duì)系統(tǒng)的整體需求分析,第四章和第五章是系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。第六章總結(jié)了開發(fā)的經(jīng)驗(yàn)和教訓(xùn),并對(duì) EJB 技術(shù)的發(fā)展做了展望。基于 的分布式網(wǎng)上購物系統(tǒng) 62 系統(tǒng)開發(fā)環(huán)境及相關(guān)技術(shù) 系統(tǒng)開發(fā)環(huán)境系統(tǒng)使用 作為開發(fā)工具,采用 作為應(yīng)用服務(wù)器,使用EJB 、Servlet 和 JSP 技術(shù)作為開發(fā)方法,是基于 EJB 的 Web 應(yīng)用。 Java 技術(shù)簡介Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序設(shè)計(jì)語言(以下簡稱 Java 語言)和 Java 平臺(tái)的總稱。用 Java 實(shí)現(xiàn)的 HotJava 瀏覽器(支持 Java applet)顯示了 Java 的魅力:跨平臺(tái)、動(dòng)感的 Web、Inter 計(jì)算。從此,Java 被廣泛接受并推動(dòng)了 Web 的迅速發(fā)展,常用的瀏覽器現(xiàn)在均支持 Java applet。Java 平臺(tái)由 Java 虛擬機(jī)(Java Virtual Machine)和 Java 應(yīng)用編程接口(Application Programming Interface,API)構(gòu)成。 Java 應(yīng)用編程接口為 Java 應(yīng)用提供了一個(gè)獨(dú)立于操作系統(tǒng)的標(biāo)準(zhǔn)接口,可分為基本部分和擴(kuò)展部分。在硬件或操作系統(tǒng)平臺(tái)上安裝一個(gè) Java 平臺(tái)之后, Java 應(yīng)用程序就可運(yùn)行?,F(xiàn)在 Java 平臺(tái)已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。這樣 Java 程序可以只編譯一次,就可以在各種系統(tǒng)中運(yùn)行。 Java應(yīng)用編程接口已經(jīng)從 版發(fā)展到 版。目前常用的 Java 平臺(tái)基于 ,最近版本為 。Java 分為三個(gè)體系 JavaME,JavaSE,JavaEE。Java ME 用于開發(fā)在移動(dòng)設(shè)備和嵌入式設(shè)備(比如手機(jī)、PDA、電視機(jī)頂盒和打印機(jī))上運(yùn)行的應(yīng)用程序,包括靈活的用戶界面、健壯的安全模型、許多內(nèi)置的網(wǎng)絡(luò)協(xié)議以及對(duì)可以動(dòng)態(tài)下載的連網(wǎng)和離線應(yīng)用程序的豐富支持。Java SE 是標(biāo)準(zhǔn)版本,用于開發(fā)和部署在桌面、服務(wù)器、嵌入式環(huán)境和實(shí)時(shí)環(huán)境中使用的 Java 應(yīng)用程序。Java EE 是企業(yè)版本,用于開發(fā)和部署可移植、健壯、可伸縮且安全的服務(wù)器端 Java 應(yīng)用程序。 Java EE 是在 Java SE 的基礎(chǔ)上構(gòu)建的,它提供 Web 服務(wù)、組件模型、管理和通信 API,可以用來實(shí)現(xiàn)企業(yè)級(jí)的面向服務(wù)體系結(jié)構(gòu)和 Web 應(yīng)用程序。Java 語言是一個(gè)支持網(wǎng)絡(luò)計(jì)算的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。Java 語言吸收了Smalltalk 語言和 C++語言的優(yōu)點(diǎn),并增加了其它特性,如支持并發(fā)程序設(shè)計(jì)、網(wǎng)絡(luò)通信、和多媒體數(shù)據(jù)控制等。Java 語言的優(yōu)良特性使得 Java 應(yīng)用具有無比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。Java 對(duì)對(duì)象技術(shù)的全面支持和 Java 平臺(tái)內(nèi)嵌的 API 能縮短應(yīng)用系統(tǒng)的開發(fā)時(shí)間并降低成本。Java 的編譯一次,到處可運(yùn)行的特性使得它能夠提供一個(gè)隨處可用的開放結(jié)構(gòu)和在多平臺(tái)之間傳遞信息的低成本方式。特別是 Java 企業(yè)應(yīng)用編程接口( Java Enterprise
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1