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