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

正文內(nèi)容

基于ejb30的分布式網(wǎng)上購物系統(tǒng)(編輯修改稿)

2024-09-01 22:53 本頁面
 

【文章內(nèi)容簡介】 APIs)為企業(yè)計算及電子商務應用系統(tǒng)提基于 的分布式網(wǎng)上購物系統(tǒng) 7供了有關技術和豐富的類庫。 EJB 技術簡介企業(yè)級 JavaBean(Enterprise JavaBean,EJB)是一個用來構筑企業(yè)級應用的服務器端可被管理組件,Java 企業(yè)版(Java Enterprise Edition)API 中提供了對 EJB 的規(guī)范。EJB 是一個封裝有某個應用程序之業(yè)務邏輯的服務器端組件。EJB 最早于 1997 年由 IBM 提出,旋即被 Sun Microsystems 采用并形成標準(EJB 和 EJB )。其后在 Java 社區(qū)進程(Java Community Process)的支持下陸續(xù)有一些 JSR 被制訂來定義新的 EJB 標準,分別是 JSR 19(EJB ),JSR 153(EJB )以及最新的 JSR 220(EJB )。EJB 規(guī)范的目的在于為企業(yè)及應用開發(fā)人員實現(xiàn)后臺業(yè)務提供一個標準方式,從而解決一些此前在作業(yè)過程中總是重復發(fā)生的問題。EJB 以一個標準方式自動處理了諸如數(shù)據(jù)持久化,事務集成,安全對策等不同應用的共有問題,使得軟件開發(fā)人員可以專注于程序的特定需求而不再飽受那些非業(yè)務元素的困擾。 EJB 與 JavaBean 的區(qū)別JavaBean 是可復用的組件,對 JavaBean 并沒有嚴格的規(guī)范。理論上講,任何一個Java 類都可以是一個 Bean(例如 Spring 中就是這樣,所有的類都可以配置為 Bean)。但通常情況下,由于 JavaBean 是被容器所創(chuàng)建的(如 Tomcat),所以 JavaBean 應具有一個無參的構造器。另外,通常 JavaBean 還要實現(xiàn) Serializable 接口用于實現(xiàn) Bean的持久性。JavaBean 實際上相當于微軟 COM 模型中的本地進程內(nèi) COM 組件,它是不能被跨進程訪問的。Enterprise JavaBean 則相當于 DCOM,即分布式組件。它是基于Java 的遠程方法調(diào)用(RMI )技術的,所以 EJB 可以被遠程訪問(跨進程、跨計算機)。但 EJB 必須被部署在諸如 Webspere、WebLogic、JBoss 這樣的容器中,EJB 客戶從不直接訪問真正的 EJB 組件,而是通過其容器訪問。EJB 容器是 EJB 組件的代理,EJB 組件由容器所創(chuàng)建和管理,客戶通過容器來訪問真正的 EJB 組件。 與 的區(qū)別圖 21 是 的訪問模型?;? 的分布式網(wǎng)上購物系統(tǒng) 8圖 21 的訪問模型如圖所示,EJB : ? EJB ? 組件接口要求實現(xiàn)EJBObject或EJBLocalObject以及處理許多不必要的異常? 基于XML的EJB ? 基于EJB 模型的容器管理持久性在開發(fā)和管理方面過于復雜,并且失去了幾個基本特性——如使用數(shù)據(jù)庫序列定義主鍵的標準方法? EJB QL語法非常有限,而且是靜態(tài)的,無法做到運行期間的動態(tài)查詢? EJB ,因為它們在繼承和多態(tài)性方面的有使用限制? 開發(fā)人員無法在EJB容器外部測試EJB模塊,而在容器內(nèi)部調(diào)試EJB非常復雜和耗時? 查找和調(diào)用EJB ,即使是在應用程序中使用最基本的EJB,也需要對JNDI有一個詳細的了解? 對容器的依賴使得EJB ,無法實現(xiàn)一次編寫,到處運行的面向構件的開發(fā)所有這些復雜度和缺陷,都導致EJB ,所以出現(xiàn)了EJB 。圖22是EJB ?;? 的分布式網(wǎng)上購物系統(tǒng) 9圖 22 的訪問模型EJB ,具體體現(xiàn)在: ? 消除了不必要的接口Remote,Home ,EJB 以及回調(diào)方法實現(xiàn)? 實體Bean采用了POJO模型,一個簡單的JavaBean就可以是一個實體Bean,無需依賴容器運行和測試? 全面采用O/R Mapping技術來實現(xiàn)數(shù)據(jù)庫操作? 實體Bean可以運用在所有需要持久化的應用,不管是客戶端還是服務器端,從而真正實現(xiàn)面向構件的開發(fā)? 實體Bean現(xiàn)在支持繼承和多態(tài)性? 靈活豐富的JPQL查詢語言? SQL支持? 使用元數(shù)據(jù)注解代替部署描述符,減少復雜配置和提高可維護性? 將常規(guī)Java類用作EJB并將常規(guī)業(yè)務接口用于 EJB從整個EJB 規(guī)范的角度來看,EJB 久化API 上。在EJB ,實體Bean持久化已經(jīng)單獨作為一個持久化API規(guī)范和EJB的其它部分分離開來。 中 Bean 的分類根據(jù) Bean 的用途,EJB 規(guī)范中將它們分為三種類型:會話 Bean、消息驅動基于 的分布式網(wǎng)上購物系統(tǒng) 10Bean 和實體。每種 Bean 類型都服務于一個目的,并且可以使用 EJB 服務的特定子集。給 Bean 分類的真正目的是保證不會在允許的范圍內(nèi)使它們過多地加載服務,Bean 分類也幫助我們以有意義的方式了解和組織應用程序。例如,Bean 類型幫助我們在分層架構的基礎上開發(fā)應用程序。會話 Bean 和消息驅動 Bean(MessageDriven Bean,MDB)用于構造業(yè)務邏輯,它們活動于容器中,容器管理這些 Bean 并且為它們提供服務。實體用于構建應用程序的持久化部分,與容器一樣,由持久化管理器管理實體。持久化管理器可以插入到容器中,是 Java 持久化 API 更高的抽象。 EJB 的新特性(1) 簡化的程序設計模型EJB 最大的問題在于為了實現(xiàn) EJB,我們需要編寫大量代碼。而 EJB 使我們可以使用 POJO 和 POJI 開發(fā) EJB 組件,然后我們可以按照需求,使用注解對它們應用配置元數(shù)據(jù),以便添加平臺服務,如遠程性、Web 服務支持以及生命周期回調(diào)。在EJB 中,服務定義從類型安全的領域轉移到了部署和運行時配置中,基本用不到的很多機制性步驟都由平臺本身自動完成。(2) 用注解代替部署描述文件除了必須編寫大量樣板代碼之外,管理 EJB 的重要障礙是仍然必須為每個組件進行大量 XML 配置。EJB 允許我們使用元數(shù)據(jù)注解配置組件,而不一定要使用冗長、可讀性差的 XML 部署描述文件。除了使配置任務更加容易之外, EJB 還通過盡可能地使用有意義的默認值減少了需要配置的任務的總量。當我們使用 ORM 處理自動持久化時,這顯得尤為重要。(3) 依賴注入和 JNDI 查找EJB 開發(fā)中最為單調(diào)乏味的一部分是,當訪問 EJB 或由容器管理的資源(如池化的數(shù)據(jù)庫連接處理)以進行 JNDI 查找時,必須多次編寫相同的幾行樣板代碼。JNDI的麻煩在于它使應用程序代碼與應用程序服務器結合在一起,這使開發(fā)和測試非常困難。在 EJB 中,JNDI 查找被轉換為使用基于元數(shù)據(jù)的依賴注入的簡單配置。(4) 簡化的持久化 APIEJB 持久化模型的大量問題源于它把容器范例應用到了不適合它解決的問題上。使實體 Bean 受容器管理的主要動機是為了允許遠程訪問,但因為性能的原因,實際上很少有客戶端利用這一特性,而是選擇使用會話 Bean 作為遠程訪問端點。EJB 通過使用更為自然的 API 范例,通過 EntityManager 接口操作基于元數(shù)據(jù)的 POJO,從而解決了這個問題。EJB 中實體 Bean 的 ORM 從未標準化,查詢機制 EJB QL 也很不完善。在 EJB 中,持久化由 Java 持久化 API( Java Persistence API,JPA )管理。首先,它提供能夠處理大部分自動持久化復雜情況的健壯的 ORM 配置集。其次,Java基于 的分布式網(wǎng)上購物系統(tǒng) 11持久化查詢語言(JPQL)顯著地改進了 EJB QL,使 OR 查詢技術趨于標準化。最后,EntityManager API 標準化了 ORM CURD 操作。但是,標準化不是簡化的 API 的唯一優(yōu)勢,另一個非常好的特性是它可以運行在容器之外。(5) 可進行單元測試的 POJO 組件在 EJB 中,只能對組件進行功能性測試,因為組件必須部署到容器中才能執(zhí)行。因為所有 EJB 組件都是 POJO,所以可以容易地在容器之外執(zhí)行它們。這就是說使用測試框架(如 Junit 或者 TestNG)對所有組件業(yè)務邏輯進行單元測試成為可能。 Servlet 技術簡介Servlet 是一種服務器端的 Java 應用程序,具有獨立于平臺和協(xié)議的特性,可以生成動態(tài)的 Web 頁面,它擔當客戶請求( Web 瀏覽器或其他 HTTP 客戶程序)與服務器響應(HTTP 服務器上的數(shù)據(jù)庫或應用程序)的中間層。Servlet 是位于 Web 服務器內(nèi)部的服務器端的 Java 應用程序,與傳統(tǒng)的從命令行啟動的 Java 應用程序不同,Servlet由 Web 服務器進行加載,一個 Servlet 就是 Java 編程語言中的一個類,它被用來擴展服務器的性能,服務器上駐留著可以通過“請求—響應”編程模型來訪問的應用程序。雖然 Servlet 可以對任何類型的請求產(chǎn)生響應,但通常只用來擴展 Web 服務器的應用程序,該 Web 服務器必須包含支持 Servlet 的 Java 虛擬機。最早支持 Servlet 技術的是 JavaSoft 的 Java Web Server。此后,一些其它的基于Java 的 WebServer 開始支持標準的 Servlet API。 Servlet 的主要功能在于交互式地瀏覽和修改數(shù)據(jù),生成動態(tài) Web 內(nèi)容。這個過程為: (1) 客戶端發(fā)送請求至服務器端 (2) 服務器將請求信息發(fā)送至 Servlet (3) Servlet 生成響應內(nèi)容并將其傳給服務器。響應內(nèi)容動態(tài)生成,取決于客戶端的請求(4) 服務器將響應返回給客戶端 Servlet 看起來像是通常的 Java 程序。Servlet 導入特定的屬于 Java Servlet API 的包。因為是對象字節(jié)碼,可動態(tài)地從網(wǎng)絡加載,可以說 Servlet 對服務器就如同 Applet 對客戶端一樣,但是,由于 Servlet 運行于服務器中,它并不需要一個圖形用戶界面。從這個角度講,Servlet 也被稱為 Faceless Object。 Servlet 目前最新版本為 草案。 JSP 技術 簡介JSP(Java Server Pages)是由 Sun Microsystems 公司倡導、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術標準,其在動態(tài)網(wǎng)頁的建設中有其強大而別特的功能,JSP 與基于 的分布式網(wǎng)上購物系統(tǒng) 12Microsoft 的 ASP 技術非常相似。兩者都提供在 HTML 代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。在 ASP 或 JSP 環(huán) 境下,HTML 代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的 HTML 頁面只依賴于Web 服務器,而 ASP 和 JSP 頁面需要附加 的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結果被重新嵌入到 HTML 代碼中,然后一起發(fā)送給瀏覽器。ASP 和 JSP 都是面向 Web 服務器的技術,客戶端瀏覽器不需要任何附加的軟件支持。現(xiàn)介紹如下:(1) 將內(nèi)容的生成和顯示進行分離使用 JSP 技術, Web 頁面開發(fā)人員可以使用 HTML 或者 XML 標識來設計和格式化最終頁面。使用 JSP 標識或者小腳本來生成頁面上的動態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的,例如請求帳戶信息或者特定的一瓶酒的價格) 。生成內(nèi)容的邏輯被封裝在標識和 JavaBeans 組件中,并且捆綁在小腳本中,所有的腳本在服務器端運行。如果核心邏輯被封裝在標識和 Beans 中,那么其他人,如 Web 管理人員和頁面設計者,能夠編輯和使用 JSP 頁面,而不影響內(nèi)容的生成。在服務器端,JSP 引擎解釋 JSP 標識和小腳本,生成所請求的內(nèi)容(例如,通過訪問 JavaBeans 組件,使用 JDBCTM 技術訪問數(shù)據(jù)庫,或者包含文件) ,并且將結果以HTML(或者 XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護自己的代碼,而又保證任何基于 HTML 的 Web 瀏覽器的完全可用性。(2) 生成可重用的組件絕大多數(shù) JSP 頁面依賴于可重用的,跨平臺的組件(JavaBeans 或者 Enterprise JavaBeans TM 組件)來執(zhí)行應用程序所要求的更為復雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結果的開發(fā)努力中得到平衡。(3) 采用標識簡化頁面開發(fā)Web 頁面開發(fā)人員不會都是熟悉腳本語言的編程人員。Java Server Page 技術封裝了許多功能,這些功能是在易用的、與 JSP 相關的 XML 標識中進行動態(tài)內(nèi)容生成所需要的。標準的 JSP 標識能夠訪問和實例化 JavaBeans 組件,設置或者檢索組件屬性,下載 Applet,以及執(zhí)行用其他方法更難于編碼和耗時的功能。通過開發(fā)定制化標識庫,JSP 技術是可以擴展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標識庫。這使得 Web 頁面開發(fā)人員能夠使用熟悉的工具和如同標識一樣的執(zhí)行特定功能的構件來工作。(4) 將內(nèi)容的生成和顯示進行分離與 Servlet 相比, JSP 能提供所有 Servlet 的功能,但它比用 println 書寫和修改HTML 更方便。此外,你可以更明確的進行分工,WEB 頁面設計人員編寫 HTML,只需要留出地方讓 Servlet 程序員插入動態(tài)部分即可。基于
點擊復制文檔內(nèi)容
電大資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1