- 相關推薦
J2EE軟件開發(fā)過程
需求調查
規(guī)格說明書要點:完整性、正確性、可行性、必要性、劃分優(yōu)先級、無二義性、可驗證性
原形分析法--主要用戶界面
1、開始窗口
2、歡迎窗口
3、種類窗口
4、貨架/產(chǎn)品窗口
5、貨物Item窗口
6、購物車窗口
7、登錄窗口
8、帳戶信息
9、窗口訂單信息
10、窗口訂單
11、完成窗口
功能介紹
PetStore共有四個子系統(tǒng)組成
1、PetStore Web Site,該部分是petstore的核心,客戶登錄系統(tǒng)進行選擇,定購,提交訂單
2、PetStore Admin,該部分是系統(tǒng)的管理功能,提供銷售統(tǒng)計,手工接受.拒絕訂單等功能,界面也是個web界面
3、Order Processing Center訂單調度中心,對客戶提交的訂單進行處理,用java mail來通知客戶,通過JMS發(fā)訂單給供應商
4、PetStore Supplier為產(chǎn)品供應者提供維護畫面。通過JMS接受訂單,派送貨物給用戶,提供一個基于web的庫存管理,維護庫存數(shù)據(jù)庫
軟件開發(fā)--概要設計
總體設計、接口設計、運行設計、數(shù)據(jù)結構設計、出錯處理、系統(tǒng)維護
設計考慮
1、應用框架的選擇
Model1=JSP+JavaBean
Model2=JSP+Servlet+JavaBean MVC
功能分離使得應用程序具有更好的重用性,和可維護性
2、WEB層處理商業(yè)邏輯和EJB層處理商業(yè)邏輯的選擇
EJB層可提供一個穩(wěn)定的,大規(guī)模的,基于組件的開發(fā)模式,以及各種穩(wěn)定的企業(yè)特性,如持續(xù)性管理,安全管理,異步通訊,事務處理特性
本地和遠程接口EJB的選擇
遠程EJB提高穩(wěn)定性和性能
本地EJB提高性能,可實現(xiàn)細粒度的操作
配置和編程實現(xiàn)事務控制的選擇
在顯示數(shù)據(jù)的時候使用了程序控制
在更新數(shù)據(jù)的時候,采用了配置方式(EJB JDBC)
同步和異步方式的選擇
使用同步方式讀取貨品的目錄
使用異步方式發(fā)送訂單
J2EE與MVC的結合
最上層Application Logic是用戶視圖;Web Application Framework(WAF)用來控制應用的視圖跳轉,產(chǎn)生模板視圖,調用商業(yè)組件,完成商業(yè)處理,提供了許多WEB應用所需的服務,包括請求的過濾和分發(fā);Components封裝了業(yè)務邏輯,商業(yè)數(shù)據(jù),并且操作這些商業(yè)數(shù)據(jù),實體EJB代表了商業(yè)實體
PetStore模塊劃分:控制模塊、客戶登錄和注冊控制模塊、購物車模塊、異步消息模塊、貨架目錄模塊、客戶模塊
數(shù)據(jù)庫結構:ACCOUNTEJB、ADDRESSEJB、CATEGORY、 CATEGORY_DETAILS、CONTACTINFOEJB、COUNTEREJB、CREDITCARTDEJB、CUSTOMEREJB、 INVENTORYEJB、ITEMEJB、ITEM_DETAILS、LINEITEMEJB、MANAGEREJB、PRODUCTEJB、 PRODUCT_DETAILS、PROFILEEJB、PURCHASEORDEREJB、SEQUENCEGEN、 SUPPLIERORDEREJB、SUPPLIER_ADDRESSEJB、SUPPLIER_CONTACTINFOEJB、 SUPPLIER_LINEITEMEJB、USEREJB
軟件開發(fā)--詳細設計與實現(xiàn)
1、控制模塊:控制用戶的請求,商業(yè)邏輯,過濾器分析
2、客戶登錄和注冊控制模塊:做為客戶注冊登錄,也CUSTOMEREJB連接
3、異步信息模塊:客戶下了訂單以后,把消息通過JMS放在消息 列,對消息隊列進行處理
4、貨架目錄模塊:列出商品貨架、種類,客戶根據(jù)需求
5、客戶模塊:管理客戶帳戶
6、購物車模塊:在逛網(wǎng)店時,添加商品
控制模塊組成應用的框架
必須能處理所有的HTTP請求
HTTP響應輸入可以是任何的Content-Type
商業(yè)邏輯可以容易擴展
新的視圖應容易添加
必須提供靈活的外觀控制
當應用變大時應容易維護
顆粒必須有很好的權衡
新功能必須容易添加
PetStore的Web Application Framework是對J2EE藍圖的web層規(guī)范的實現(xiàn)。
控制模塊由WEB層的前臺控制servlet和EJB層的EJBController構成
每個請求執(zhí)行下列操作:
請求過濾
映射請求到某個HTML Action類
執(zhí)行HTML Action
選擇視圖
結果視圖的裝配
映射事件到EJB Action
執(zhí)行EJB Action
前臺控制Servlet
負責接受和處理每個HTTP請求,協(xié)調其它控制組件分發(fā)請求和產(chǎn)生下一個view。請求處理類RequestProcessor將URLs映射到Action
Servlet Filter
可放置到前臺控制Servlet之前,用來完成一些所有請求共同的處理
EJB層的EJBController
解釋執(zhí)行一個EJBAction,Event和EJBAction使得新的業(yè)務功能很容易加入到系統(tǒng)中。
模版Servlet(TemplateServlet)
用來拼裝所有的頁面,形成統(tǒng)一風格的界面
控制模塊實現(xiàn)客戶化功能
過濾請求
EncodeFilter(完成輸碼的功能)和SignOnFilter(用來檢查用戶是否登錄)
集中控制
MainServlet處理所有的請求,控制屏幕走向和視圖的產(chǎn)生
把一個請求映射到一個HTMLAction類執(zhí)行
用戶登錄和注冊控制模塊
PetStore采用的是應用程序層來控制安全,使用實體EJB來記載客戶和客戶的帳戶信息,在一些受保護的頁面,應用系統(tǒng)判斷客戶是否登錄,如未登錄,應用系統(tǒng)先保存這個請求地址,然后強制跳轉到一個登錄頁面?蛻暨x擇使用已有帳戶登錄或注冊新的用戶。登錄或注冊成功后,應用系統(tǒng)把保存在sessions中的信息和URL取出,跳轉到那個URL中,讓客戶繼續(xù)購物
PetStore使用WAF創(chuàng)建一個新用戶。一個URL請求一來,RequestProcessor創(chuàng)建一個 CreateUserHTMLAction執(zhí)行web層的處理,CreateUserHTMLAction僅僅返回一個事件 CreateUserEvent,RequestProcessor會把這個事件傳遞給Web端控制器WebClientController,Web端控制器然后傳遞給EJB端控制器
EJBClientControllerEJB,它是一個有狀態(tài)的EJB。EJB端控制器找到相應的EJBAction來完成真正的商業(yè)處理
異步消息模塊
組件
1、EJB-代表商業(yè)數(shù)據(jù)和執(zhí)行商業(yè)邏輯處理
2、JSP頁面定義了整個視圖框架模板template.jsp和模板組成的各個JSP,以及各種被引用的圖形文件
3、XML文件-用于定義屏幕,屏幕跳轉控制,綁定URL到某個HTML
4、Action,定制signOn,以及J2EE部署的XML文件
5、Servlet過濾器Filter用于校驗用戶安全的登錄和輸出的編碼
6、異步信息發(fā)送組件-傳輸使用XML文件封裝的訂單到訂單處理中心
【J2EE軟件開發(fā)過程】相關文章:
什么是J2EE03-16
j2ee介紹03-20
J2EE的概念03-19
J2EE發(fā)展狀況03-19
J2EE的基本術語03-16
J2EE基礎概念03-30
J2EE發(fā)展背景03-19
j2ee的學習路線03-18
j2ee安裝教程03-30