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

正文內(nèi)容

基于ejb30的分布式網(wǎng)上購物系統(tǒng)(更新版)

2024-09-09 22:53上一頁面

下一頁面
  

【正文】 變購物車內(nèi)容觸發(fā)條件 用戶需要改變購物車內(nèi)容基本流程 用戶進入購物車頁面,刪除不需要的圖書;點擊鏈接進入管理頁面,修改圖書數(shù)量,確認后返回到購物車頁面。 活動圖基于 的分布式網(wǎng)上購物系統(tǒng) 18基于 的分布式網(wǎng)上購物系統(tǒng) 19圖 32 系統(tǒng)活動圖圖 32 是系統(tǒng)的活動圖。登錄成功之后, 顯示訂單信息。主機作為服務器部署 EJB 項目,虛擬機兼作服務器和客戶端,部署 Web 項目,使用虛擬機上的瀏覽器登錄網(wǎng)站。 WebRoot 文件夾下有 css、image、js、jsp 子文件夾,分別用來存放css 文件、網(wǎng)站圖片、js 文件和 jsp 文件。save 方法保存實例到數(shù)據(jù)庫,delete 方法刪除實例, update 方法更新實例,findByProperty 方法根據(jù)某一屬性查找實例,findAll 方法返回所有實例。if (rowStartIdxAndCount != null amp。}}findByTitleKeywordAndClassify 方法使用 JPQL 語句在數(shù)據(jù)庫中進行查詢,它同時實現(xiàn)了結果集的分頁功能,由參數(shù) rowStartIdxAndCount 設置要返回記錄的起始下標和條數(shù)。BookFacadeRemote bookDAO = (BookFacadeRemote)()。(basePath + jsp/)。具體代碼如下:protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String path = ()。(0d)。(book)。圖 53 顯示圖書詳細信息圖 54 顯示購物車信息基于 的分布式網(wǎng)上購物系統(tǒng) 36 發(fā)送郵件功能的實現(xiàn)實現(xiàn)發(fā)送郵件功能的是 MailService 類,它是使用 JavaMail 的一個輔助類。 return true。QueueSession queueSession = (false, )。} catch (JMSException e) {()。}catch (NamingException e) {()。QueueSender publisher = (queue)。return false。 ()。(newItem)。boolean itemNotExist = true。HttpSession session = ()。 if((pageindex)) int pageIndex = (pageindex)。ListBook bookList = null。String basePath = () + :// + () + : + () + path + /。 0) {int rowStartIdx = (0, rowStartIdxAndCount[0])。本系統(tǒng)使用到 MailServiceBean,它只有一個onMessage()方法,監(jiān)聽隊列中是否有消息到達?;? 的分布式網(wǎng)上購物系統(tǒng) 24圖 43 Web 項目的目錄結構圖 44 是 OnlineBookstoreUML 項目的目錄結構, 是數(shù)據(jù)庫 ER 圖, 中是項目的用例圖、類圖、活動圖、時序圖。圖 41 項目整體目錄結構圖 42 是 OnlineBookstoreEJB 項目的目錄結構,entity、session 和 mdb 三個包分別存放 EJB 的實體、會話 Bean 和消息驅(qū)動 Bean,help 包中存放輔助類。 時序圖基于 的分布式網(wǎng)上購物系統(tǒng) 20基于 的分布式網(wǎng)上購物系統(tǒng) 21圖 33 系統(tǒng)時序圖圖 33 是系統(tǒng)的時序圖,與用例分析及活動圖一一對應。在主頁上可以使用關鍵字來搜索圖書, 顯示返回的結果。用例名 訂單管理基于 的分布式網(wǎng)上購物系統(tǒng) 16用例 ID Usecase5主要業(yè)務參與者 用戶前置條件 用戶登錄到系統(tǒng)后置條件 訂單發(fā)送到用戶的注冊郵箱觸發(fā)條件 用戶需要下單基本流程 用戶進入訂單管理頁面,可以返回到購物車頁面修改圖書數(shù)量或刪除圖書;用戶確認之后,系統(tǒng)將訂單信息保存到數(shù)據(jù)庫,向用戶郵箱發(fā)送訂單信息,顯示“下單成功”提示信息,并在 2 秒后自動跳轉(zhuǎn)到網(wǎng)站主頁。圖 31 系統(tǒng)用例圖 用例描述用例名 用戶注冊用例 ID Usecase1主要業(yè)務參與者 用戶前置條件 無后置條件 用戶獲得一個新的賬號觸發(fā)條件 用戶需要登錄基本流程 用戶在注冊頁面填寫并提交注冊信息;系統(tǒng)檢查用戶填寫的注冊信息并查詢數(shù)據(jù)庫,查看用戶名是否已存在;若注冊信息全部有效且用戶名不存在,則注冊成功。這使得 Web 頁面開發(fā)人員能夠使用熟悉的工具和如同標識一樣的執(zhí)行特定功能的構件來工作。(2) 生成可重用的組件絕大多數(shù) JSP 頁面依賴于可重用的,跨平臺的組件(JavaBeans 或者 Enterprise JavaBeans TM 組件)來執(zhí)行應用程序所要求的更為復雜的處理。程序代碼的執(zhí)行結果被重新嵌入到 HTML 代碼中,然后一起發(fā)送給瀏覽器。Servlet 導入特定的屬于 Java Servlet API 的包。 Servlet 技術簡介Servlet 是一種服務器端的 Java 應用程序,具有獨立于平臺和協(xié)議的特性,可以生成動態(tài)的 Web 頁面,它擔當客戶請求( Web 瀏覽器或其他 HTTP 客戶程序)與服務器響應(HTTP 服務器上的數(shù)據(jù)庫或應用程序)的中間層。在 EJB 中,持久化由 Java 持久化 API( Java Persistence API,JPA )管理。當我們使用 ORM 處理自動持久化時,這顯得尤為重要。實體用于構建應用程序的持久化部分,與容器一樣,由持久化管理器管理實體。圖22是EJB 。另外,通常 JavaBean 還要實現(xiàn) Serializable 接口用于實現(xiàn) Bean的持久性。EJB 是一個封裝有某個應用程序之業(yè)務邏輯的服務器端組件。 Java EE 是在 Java SE 的基礎上構建的,它提供 Web 服務、組件模型、管理和通信 API,可以用來實現(xiàn)企業(yè)級的面向服務體系結構和 Web 應用程序?,F(xiàn)在 Java 平臺已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。第六章總結了開發(fā)的經(jīng)驗和教訓,并對 EJB 技術的發(fā)展做了展望。這就減少了客戶端和業(yè)務對象之間的耦合度,同時客戶端也不必管理事務的細節(jié)。Facade 模式為子系統(tǒng)中的一套接口提供了一個統(tǒng)一的接口。DAO 模式是 J2EE 設計模式中的一種核心設計模式。在 Hibernate 這樣的 ORM 框架開始流行之前,很多應用程序開發(fā)者直接使用JDBC 開發(fā)數(shù)據(jù)庫訪問代碼。Hibernate 的創(chuàng)始人Gavin King 參與了這一新版規(guī)范的制訂,并對 EJB 大加提倡。盡管已經(jīng)有一些高質(zhì)量的集成開發(fā)工具可以協(xié)助開發(fā)人員通過自動編碼解決一部分重復作業(yè),但這并不能降低學習此項技術的難度。然而隨后各種問題便接踵而至,對 EJB 的惡評短時間內(nèi)激增。(4) 添加了 Web 服務的支持,允許會話 Bean 暴露端點接口,添加了允許按照指定的時間或者時間間隔調(diào)用 EJB 的計時器服務。 EJB 的歷史版本(1) EJB 最初的版本 開始支持有狀態(tài)和無狀態(tài)服務對象(稱為會話 Bean),以及可選支持持久化域?qū)ο螅ǚQ為實體 Bean)。它提供多個對外的接口,按照一定規(guī)則,分派不同請求由不同接口來處理,由此實現(xiàn)各服務器負載的均衡。網(wǎng)上購物系統(tǒng)是實體店的很好補充,它節(jié)省了人力方面的投資,而且營業(yè)時間不受限制,消費者可以在任何時間登錄、購物。相應地網(wǎng)上購物系統(tǒng)需要處理的信息量急劇增加,單臺服務器往往無法承受巨大的訪問量,這時候就需要采用分布式系統(tǒng)。你可以通過網(wǎng)絡點擊和成交量把握商品庫存的尺度和市場的趨勢,并且通過顧客的反饋得到更多有助于網(wǎng)店發(fā)展的信息。企業(yè)組織可以構建它們自己的組件,或從第三方供應商購買組件。(3) EJB 通過引入本地接口解決遠程接口造成的開銷和按值傳遞的缺陷。它可以運行在 EJB 容器的外部,因此在實體類本身中不需要專門的接口或者 EJB 專有的代碼。當然,EJB 所被賦予的使命,如對象關系映射和事務管理確實有其天然復雜性,但其 API 之復雜還是令開發(fā)人員們望而卻步,一些人開始懷疑 EJB 除了引入了復雜的實現(xiàn)手段以外似乎并未帶來什么實際好處。盡管它們不像 EJB 那樣有巨頭支持,但其在庶民間卻更加流行,并且也被一些對 EJB 深感失望的企業(yè)所采用。相應地,EJB 幾乎成為了一個全新的 API,與此前的數(shù)版可謂毫無相似度可言。DAO 是 J2EE 應用的重要組件,它隱藏了底層的數(shù)據(jù)庫訪問細節(jié)。DAO 還降低了層的復雜程度。它應用會話 Bean 來實現(xiàn) Facade 模式的思想,把構成子系統(tǒng)的一套業(yè)務對象“包裝”在會話 Bean 中。不受管理的應用程序組件必須使用 JNDI 查找才能獲得會話 Bean 的引用。用 Java 實現(xiàn)的 HotJava 瀏覽器(支持 Java applet)顯示了 Java 的魅力:跨平臺、動感的 Web、Inter 計算。目前常用的 Java 平臺基于 ,最近版本為 。Java 語言的優(yōu)良特性使得 Java 應用具有無比的健壯性和可靠性,這也減少了應用系統(tǒng)的維護費用。EJB 規(guī)范的目的在于為企業(yè)及應用開發(fā)人員實現(xiàn)后臺業(yè)務提供一個標準方式,從而解決一些此前在作業(yè)過程中總是重復發(fā)生的問題。它是基于Java 的遠程方法調(diào)用(RMI )技術的,所以 EJB 可以被遠程訪問(跨進程、跨計算機)。 中 Bean 的分類根據(jù) Bean 的用途,EJB 規(guī)范中將它們分為三種類型:會話 Bean、消息驅(qū)動基于 的分布式網(wǎng)上購物系統(tǒng) 10Bean 和實體。而 EJB 使我們可以使用 POJO 和 POJI 開發(fā) EJB 組件,然后我們可以按照需求,使用注解對它們應用配置元數(shù)據(jù),以便添加平臺服務,如遠程性、Web 服務支持以及生命周期回調(diào)。在 EJB 中,JNDI 查找被轉(zhuǎn)換為使用基于元數(shù)據(jù)的依賴注入的簡單配置。最后,EntityManager API 標準化了 ORM CURD 操作。最早支持 Servlet 技術的是 JavaSoft 的 Java Web Server。 Servlet 目前最新版本為 草案。使用 JSP 標識或者小腳本來生成頁面上的動態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的,例如請求帳戶信息或者特定的一瓶酒的價格) 。(3) 采用標識簡化頁面開發(fā)Web 頁面開發(fā)人員不會都是熟悉腳本語言的編程人員?;? 的分布式網(wǎng)上購物系統(tǒng) 13(5) 由于 JSP 頁面的內(nèi)置腳本語言是基于 Java 編程語言的,而且所有的 JSP 頁面都被編譯成為 Java Servlet,JSP 頁面就具有 Java 技術的所有好處,包括健壯的存儲管理和安全性。擴展流程 3如果用戶名不存在,系統(tǒng)顯示提示信息,要求用戶重新輸入用戶名;3如果密碼錯誤,系統(tǒng)顯示提示信息,要求用戶重新輸入密碼。擴展流程 無用例名 圖書管理用例 ID Usecase7主要業(yè)務參與者 管理員前置條件 管理員登錄到系統(tǒng)后置條件 圖書信息更新觸發(fā)條件 需要管理圖書基本流程 管理員進入后臺圖書管理頁面,查看所有圖書的主要信息;點擊某一圖書條目,在下方顯示該圖書的全部信息;修改之后確認,更新圖書信息。點擊“修改數(shù)量”按鈕,在 頁面可以修改購物車。用戶表存放用戶注冊信息,圖書信息表存儲圖書信息,訂單表存儲用戶的訂單信息,訂單明細表存儲訂單信息中的每一條目。mdb 包中是使用JMS 的消息驅(qū)動 Bean,用于處理像發(fā)送郵件這種可以異步處理的用戶請求?;? 的分布式網(wǎng)上購物系統(tǒng) 25圖 45 實體類圖 會話 Bean 類圖 46 是會話 Bean 的類圖。Query query = (queryString)。if (rowCount 0) {(rowCount)。String pageindex = (String)(pageindex)。}HttpSession session = ()。圖 52 為顯示搜索結果的 頁面,依次列出各項。Book book = (Book)(book)。break?;? 的分布式網(wǎng)上購物系統(tǒng) 35(order, order)。 ((String)(), username, password)。向 MailQueue發(fā)送消息的代碼如下:try{Context ctx = new InitialContext()。(content, content)。MessageDriven(mappedName = jms/MailServiceBean, activationConfig = {ActivationConfigProperty(propertyName = acknowledgeMode, propertyValue = Autoacknowledge),ActivationConfigProperty(propertyName = destinationType, propertyValue = ),ActivationConfig
點擊復制文檔內(nèi)容
電大資料相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1