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

正文內(nèi)容

基于ejb30的分布式網(wǎng)上購(gòu)物系統(tǒng)(專業(yè)版)

  

【正文】 (content, content)。 ((String)(), username, password)。break。圖 52 為顯示搜索結(jié)果的 頁(yè)面,依次列出各項(xiàng)。String pageindex = (String)(pageindex)。Query query = (queryString)。mdb 包中是使用JMS 的消息驅(qū)動(dòng) Bean,用于處理像發(fā)送郵件這種可以異步處理的用戶請(qǐng)求。點(diǎn)擊“修改數(shù)量”按鈕,在 頁(yè)面可以修改購(gòu)物車。擴(kuò)展流程 3如果用戶名不存在,系統(tǒng)顯示提示信息,要求用戶重新輸入用戶名;3如果密碼錯(cuò)誤,系統(tǒng)顯示提示信息,要求用戶重新輸入密碼。(3) 采用標(biāo)識(shí)簡(jiǎn)化頁(yè)面開發(fā)Web 頁(yè)面開發(fā)人員不會(huì)都是熟悉腳本語(yǔ)言的編程人員。 Servlet 目前最新版本為 草案。最后,EntityManager API 標(biāo)準(zhǔn)化了 ORM CURD 操作。而 EJB 使我們可以使用 POJO 和 POJI 開發(fā) EJB 組件,然后我們可以按照需求,使用注解對(duì)它們應(yīng)用配置元數(shù)據(jù),以便添加平臺(tái)服務(wù),如遠(yuǎn)程性、Web 服務(wù)支持以及生命周期回調(diào)。它是基于Java 的遠(yuǎn)程方法調(diào)用(RMI )技術(shù)的,所以 EJB 可以被遠(yuǎn)程訪問(wèn)(跨進(jìn)程、跨計(jì)算機(jī))。Java 語(yǔ)言的優(yōu)良特性使得 Java 應(yīng)用具有無(wú)比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。用 Java 實(shí)現(xiàn)的 HotJava 瀏覽器(支持 Java applet)顯示了 Java 的魅力:跨平臺(tái)、動(dòng)感的 Web、Inter 計(jì)算。它應(yīng)用會(huì)話 Bean 來(lái)實(shí)現(xiàn) Facade 模式的思想,把構(gòu)成子系統(tǒng)的一套業(yè)務(wù)對(duì)象“包裝”在會(huì)話 Bean 中。DAO 是 J2EE 應(yīng)用的重要組件,它隱藏了底層的數(shù)據(jù)庫(kù)訪問(wèn)細(xì)節(jié)。盡管它們不像 EJB 那樣有巨頭支持,但其在庶民間卻更加流行,并且也被一些對(duì) EJB 深感失望的企業(yè)所采用。它可以運(yùn)行在 EJB 容器的外部,因此在實(shí)體類本身中不需要專門的接口或者 EJB 專有的代碼。企業(yè)組織可以構(gòu)建它們自己的組件,或從第三方供應(yīng)商購(gòu)買組件。相應(yīng)地網(wǎng)上購(gòu)物系統(tǒng)需要處理的信息量急劇增加,單臺(tái)服務(wù)器往往無(wú)法承受巨大的訪問(wèn)量,這時(shí)候就需要采用分布式系統(tǒng)。它提供多個(gè)對(duì)外的接口,按照一定規(guī)則,分派不同請(qǐng)求由不同接口來(lái)處理,由此實(shí)現(xiàn)各服務(wù)器負(fù)載的均衡。(4) 添加了 Web 服務(wù)的支持,允許會(huì)話 Bean 暴露端點(diǎn)接口,添加了允許按照指定的時(shí)間或者時(shí)間間隔調(diào)用 EJB 的計(jì)時(shí)器服務(wù)。盡管已經(jīng)有一些高質(zhì)量的集成開發(fā)工具可以協(xié)助開發(fā)人員通過(guò)自動(dòng)編碼解決一部分重復(fù)作業(yè),但這并不能降低學(xué)習(xí)此項(xiàng)技術(shù)的難度。在 Hibernate 這樣的 ORM 框架開始流行之前,很多應(yīng)用程序開發(fā)者直接使用JDBC 開發(fā)數(shù)據(jù)庫(kù)訪問(wèn)代碼。Facade 模式為子系統(tǒng)中的一套接口提供了一個(gè)統(tǒng)一的接口。第六章總結(jié)了開發(fā)的經(jīng)驗(yàn)和教訓(xùn),并對(duì) EJB 技術(shù)的發(fā)展做了展望。 Java EE 是在 Java SE 的基礎(chǔ)上構(gòu)建的,它提供 Web 服務(wù)、組件模型、管理和通信 API,可以用來(lái)實(shí)現(xiàn)企業(yè)級(jí)的面向服務(wù)體系結(jié)構(gòu)和 Web 應(yīng)用程序。另外,通常 JavaBean 還要實(shí)現(xiàn) Serializable 接口用于實(shí)現(xiàn) Bean的持久性。實(shí)體用于構(gòu)建應(yīng)用程序的持久化部分,與容器一樣,由持久化管理器管理實(shí)體。在 EJB 中,持久化由 Java 持久化 API( Java Persistence API,JPA )管理。Servlet 導(dǎo)入特定的屬于 Java Servlet API 的包。(2) 生成可重用的組件絕大多數(shù) JSP 頁(yè)面依賴于可重用的,跨平臺(tái)的組件(JavaBeans 或者 Enterprise JavaBeans TM 組件)來(lái)執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。圖 31 系統(tǒng)用例圖 用例描述用例名 用戶注冊(cè)用例 ID Usecase1主要業(yè)務(wù)參與者 用戶前置條件 無(wú)后置條件 用戶獲得一個(gè)新的賬號(hào)觸發(fā)條件 用戶需要登錄基本流程 用戶在注冊(cè)頁(yè)面填寫并提交注冊(cè)信息;系統(tǒng)檢查用戶填寫的注冊(cè)信息并查詢數(shù)據(jù)庫(kù),查看用戶名是否已存在;若注冊(cè)信息全部有效且用戶名不存在,則注冊(cè)成功。在主頁(yè)上可以使用關(guān)鍵字來(lái)搜索圖書, 顯示返回的結(jié)果。圖 41 項(xiàng)目整體目錄結(jié)構(gòu)圖 42 是 OnlineBookstoreEJB 項(xiàng)目的目錄結(jié)構(gòu),entity、session 和 mdb 三個(gè)包分別存放 EJB 的實(shí)體、會(huì)話 Bean 和消息驅(qū)動(dòng) Bean,help 包中存放輔助類。本系統(tǒng)使用到 MailServiceBean,它只有一個(gè)onMessage()方法,監(jiān)聽隊(duì)列中是否有消息到達(dá)。String basePath = () + :// + () + : + () + path + /。 if((pageindex)) int pageIndex = (pageindex)。boolean itemNotExist = true。 ()。QueueSender publisher = (queue)。} catch (JMSException e) {()。 return true。(book)。具體代碼如下:protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String path = ()。BookFacadeRemote bookDAO = (BookFacadeRemote)()。if (rowStartIdxAndCount != null amp。 WebRoot 文件夾下有 css、image、js、jsp 子文件夾,分別用來(lái)存放css 文件、網(wǎng)站圖片、js 文件和 jsp 文件。登錄成功之后, 顯示訂單信息。用例名 購(gòu)物車管理用例 ID Usecase4主要業(yè)務(wù)參與者 用戶前置條件 無(wú)后置條件 改變購(gòu)物車內(nèi)容觸發(fā)條件 用戶需要改變購(gòu)物車內(nèi)容基本流程 用戶進(jìn)入購(gòu)物車頁(yè)面,刪除不需要的圖書;點(diǎn)擊鏈接進(jìn)入管理頁(yè)面,修改圖書數(shù)量,確認(rèn)后返回到購(gòu)物車頁(yè)面。通過(guò)開發(fā)定制化標(biāo)識(shí)庫(kù),JSP 技術(shù)是可以擴(kuò)展的。在 ASP 或 JSP 環(huán) 境下,HTML 代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來(lái)描述處理邏輯。因?yàn)樗?EJB 組件都是 POJO,所以可以容易地在容器之外執(zhí)行它們。EJB 允許我們使用元數(shù)據(jù)注解配置組件,而不一定要使用冗長(zhǎng)、可讀性差的 XML 部署描述文件。 與 的區(qū)別圖 21 是 的訪問(wèn)模型。特別是 Java 企業(yè)應(yīng)用編程接口( Java Enterprise APIs)為企業(yè)計(jì)算及電子商務(wù)應(yīng)用系統(tǒng)提基于 的分布式網(wǎng)上購(gòu)物系統(tǒng) 7供了有關(guān)技術(shù)和豐富的類庫(kù)。 Java 應(yīng)用編程接口為 Java 應(yīng)用提供了一個(gè)獨(dú)立于操作系統(tǒng)的標(biāo)準(zhǔn)接口,可分為基本部分和擴(kuò)展部分。這樣就減輕了網(wǎng)絡(luò)負(fù)載,提高了系統(tǒng)性能。對(duì)于 J2EE 應(yīng)用而言,數(shù)據(jù)庫(kù)是相對(duì)穩(wěn)定的部分,其 DAO 組件依賴于數(shù)據(jù)庫(kù)系統(tǒng),提供數(shù)據(jù)庫(kù)訪問(wèn)的接口,只要數(shù)據(jù)庫(kù)沒(méi)有重構(gòu),則 DAO 層通常無(wú)需改寫。因此,EJB 規(guī)范(JSR 220)為了迎合這個(gè)趨勢(shì)相比于其前輩進(jìn)行了一次激進(jìn)的大跳躍。表 列出了 EJB 規(guī)范的歷史版本、發(fā)布時(shí)間及其相應(yīng)特性。 EJB 的歷史及現(xiàn)狀每次 EJB 的新版本發(fā)布時(shí),都會(huì)帶來(lái)新的重要的特性,滿足大眾需求并采用新興技術(shù)。網(wǎng)上購(gòu)物系統(tǒng)擁有強(qiáng)大的商城功能,如商品的推薦和展示等。相應(yīng)地網(wǎng)上購(gòu)物系統(tǒng)需要處理的信息量急劇增加,單臺(tái)服務(wù)器往往無(wú)法承受巨大的訪問(wèn)量。 還引入了新型的 EJB——消息驅(qū)動(dòng)Bean( MessageDriven Bean,MDB),從而能夠參與異步消息系統(tǒng)。這是因?yàn)樽钤绲?EJB 規(guī)范只允許客戶端通過(guò)特定協(xié)議(如 CORBA)進(jìn)行遠(yuǎn)程方法調(diào)用來(lái)調(diào)用,即使大部分實(shí)際應(yīng)用根本就不需要分布式計(jì)算。它強(qiáng)調(diào)的是可復(fù)用性、可維護(hù)性和可移植性等。在 EJB 中,客戶端遠(yuǎn)程訪問(wèn)實(shí)體 Bean,然而遠(yuǎn)程訪問(wèn)有其代價(jià),即降低性能并且緊急耦合客戶端和域數(shù)據(jù)。 論文內(nèi)容安排本文第一章首先介紹了些必要的背景知識(shí),主要包括 EJB 規(guī)范的發(fā)展過(guò)程和 EJB 技術(shù)的簡(jiǎn)單介紹。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)用程序的豐富支持。 EJB 與 JavaBean 的區(qū)別JavaBean 是可復(fù)用的組件,對(duì) JavaBean 并沒(méi)有嚴(yán)格的規(guī)范。給 Bean 分類的真正目的是保證不會(huì)在允許的范圍內(nèi)使它們過(guò)多地加載服務(wù),Bean 分類也幫助我們以有意義的方式了解和組織應(yīng)用程序。使實(shí)體 Bean 受容器管理的主要?jiǎng)訖C(jī)是為了允許遠(yuǎn)程訪問(wèn),但因?yàn)樾阅艿脑?,?shí)際上很少有客戶端利用這一特性,而是選擇使用會(huì)話 Bean 作為遠(yuǎn)程訪問(wèn)端點(diǎn)。 Servlet 的主要功能在于交互式地瀏覽和修改數(shù)據(jù),生成動(dòng)態(tài) Web 內(nèi)容。如果核心邏輯被封裝在標(biāo)識(shí)和 Beans 中,那么其他人,如 Web 管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用 JSP 頁(yè)面,而不影響內(nèi)容的生成。隨著越來(lái)越多的供應(yīng)商將 JSP 支持添加到他們的產(chǎn)品中,您可以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。擴(kuò)展流程 2如果圖書信息無(wú)效,系統(tǒng)顯示具體錯(cuò)誤信息,要求管理員重新填寫。由于資源有限,所以使用虛擬機(jī)來(lái)模擬分布式部署。會(huì)話Bean 中提供的主要方法有 save()、delete() 、update() 、findByProperty() 和 findAll()。} catch (RuntimeException re) {throw re。(booklist, bookList)。if(order == null) {order = new Order()。}圖 53 為圖書詳細(xì)信息的顯示頁(yè)面 的截圖,點(diǎn)擊右邊的“加入購(gòu)物車”按鈕,則會(huì)重定向到如圖 54 所示的顯示當(dāng)前購(gòu)物車信息的 頁(yè)面。try {QueueConnection connection = ()。}MailServiceBean 是一個(gè)監(jiān)聽 MailQueue 消息隊(duì)列的 MDB。 }}在用戶下單之后,由 ProcessOrderServlet 處理用戶請(qǐng)求。}double totalPrice = () * itemQuantity + ()。String quantity = (String)(quantity).trim()。if((all)) {bookList = (keyword, rowStartIdxAndCount)。if (rowStartIdx 0) {(rowStartIdx)。圖 44 UML 項(xiàng)目的目錄結(jié)構(gòu) 類設(shè)計(jì) 實(shí)體類圖 45 是實(shí)體類 Admin、User、Book、Order 和 Item 的類圖,它們的屬性與數(shù)據(jù)庫(kù)中相應(yīng)表的字段一一對(duì)應(yīng)。 ER 圖用戶訂單 訂單明細(xì)圖書管理員n11n1n... ...圖 34 數(shù)據(jù)庫(kù) ER 圖如圖 34 所示,數(shù)據(jù)庫(kù)共有 5 個(gè)表,分別是管理員表(tbl_user) 、用戶表(tbl_user) 、圖書信息表(tbl_book) 、訂單信息表(tbl_order)和訂單明細(xì)信息表(tbl_item) ,它們之間的關(guān)系如圖所示。擴(kuò)展流程 2如果下單失敗,系統(tǒng)顯示提示信息“下單失敗”,并在 2 秒后自動(dòng)跳轉(zhuǎn)到網(wǎng)站主頁(yè)。(4) 將內(nèi)容的生成和顯示進(jìn)行分離與 Servlet 相比, JSP 能提供所有 Servlet 的功能,但它比用 println 書寫和修改HTML 更方便。ASP 和 JSP 都是面向 Web 服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。Servlet 是位于 Web 服務(wù)器內(nèi)部的服務(wù)器端的 Java 應(yīng)用程序,與傳統(tǒng)的從命令行啟動(dòng)的 Java 應(yīng)用程序不同,Servlet由 Web 服務(wù)器進(jìn)行加載,一個(gè) Servlet 就是 Java 編程語(yǔ)言中的一個(gè)類,它被用來(lái)擴(kuò)展服務(wù)器的性能,服務(wù)器上駐留著可以通過(guò)“請(qǐng)求—響應(yīng)”編程模型來(lái)訪問(wèn)的應(yīng)用程序。(3) 依賴注入和 JNDI 查找EJB 開發(fā)中最為單調(diào)乏味的一部分是,當(dāng)訪問(wèn) EJB 或由容器管理的資源(如池化的數(shù)據(jù)庫(kù)連接處理)以進(jìn)行 JNDI 查找時(shí),必須多次編寫相同的幾行樣板代碼?;? 的分布式網(wǎng)上購(gòu)物系統(tǒng) 9圖 22 的訪問(wèn)模型EJB ,具體體現(xiàn)在: ? 消除了不必要的接口Remote,Home ,EJB 以及回調(diào)方法實(shí)現(xiàn)? 實(shí)體Bean采用了POJO模型,一個(gè)簡(jiǎn)單的JavaBean就可以是一個(gè)實(shí)體Bean,無(wú)需依賴容器運(yùn)行和測(cè)試? 全面采用O/R Mapping技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)操作? 實(shí)體Bean可以運(yùn)用在所有需要持久化的應(yīng)用,不管是客戶端還是服務(wù)器端,從而真正實(shí)現(xiàn)面向構(gòu)件的開發(fā)? 實(shí)體Bean現(xiàn)在支持繼承和多態(tài)性? 靈活豐富的JPQL查詢語(yǔ)言? SQL支持? 使用元數(shù)據(jù)注解代替部署描述符,減少?gòu)?fù)雜配置和提高可維護(hù)性? 將常規(guī)J
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1