摘要:本文采用了J2EE的Struts1.2的體系架構(gòu),Struts是基于MVC的Web框架。實(shí)現(xiàn)了前臺(tái)展示與業(yè)務(wù)處理的分離,讓視圖層更富變化。
關(guān)鍵詞:視圖與管控系統(tǒng)(PPM);Struts;MVC;WEB框架
中圖分類號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 22-0000-02
1 引言
根據(jù)三大運(yùn)營(yíng)商這么激烈的競(jìng)爭(zhēng),為了更好的服務(wù)客戶,更為了落實(shí)中國(guó)電信聚焦客戶的信息化創(chuàng)新戰(zhàn)略,電信集團(tuán)公司推出了銷售品視圖與管控系統(tǒng)的功能技術(shù)規(guī)范,要求系統(tǒng)能支持:集成一點(diǎn)配置、信息共享及系統(tǒng)視圖、統(tǒng)一模板、編碼與業(yè)務(wù)視圖、一體化關(guān)鍵生命周期管控。
從上海電信目前在這塊的IT支撐上看,在產(chǎn)品與銷售品支撐中存在產(chǎn)品及銷售品多點(diǎn)重復(fù)配置,工作效率低下,通過(guò)銷售品體系梳理,在集團(tuán)、分公司各層面統(tǒng)一銷售品管理,提升銷售品集中管理的力度,提升品牌形象,并強(qiáng)化內(nèi)部管理。
面對(duì)銷售品管控上與集團(tuán)公司要求的差距,上海電信需要建設(shè)一套系統(tǒng)來(lái)實(shí)現(xiàn)對(duì)上述功能的實(shí)現(xiàn),從而滿足集團(tuán)公司的任務(wù)需求,滿足企業(yè)內(nèi)對(duì)員工的后臺(tái)支撐,更為滿足實(shí)現(xiàn)后對(duì)客戶更好的服務(wù)。
2 系統(tǒng)分析及解決方案
由于系統(tǒng)需要面向的客戶是上海電信各渠道的員工,并且將來(lái)要和CRM2.0整合的,采用的模式是B/S的,選擇的WEB框架是基于Struts的MVC經(jīng)典框架,數(shù)據(jù)庫(kù)使用的是Oracle。
針對(duì)日趨成熟的WEB的開發(fā),有JSF、Spring、EasyJweb等等,為什么還要選擇Struts,選擇10年前那個(gè)java開源web框架呢,原因很簡(jiǎn)單,因?yàn)槠渫ㄟ^(guò)數(shù)以萬(wàn)計(jì)的程序員使用,通過(guò)不斷的測(cè)試,是一個(gè)經(jīng)典又成熟的可信任的web框架。
Struts框架核心技術(shù),如JSP,Servlet,EJB等等被廣泛應(yīng)用在眾多網(wǎng)站中。事實(shí)驗(yàn)證僅靠JSP技術(shù)開發(fā)的Web應(yīng)用中,在使用中將業(yè)務(wù)邏輯處理、動(dòng)態(tài)顯示用的Java代碼以及HTML混合在一起,使閱讀、調(diào)試和維護(hù)都困難重重。而Struts基于MVC的設(shè)計(jì)思想,很好地實(shí)現(xiàn)了業(yè)務(wù)邏輯與用戶界面的分離,同時(shí),提供了大量的自定義標(biāo)記庫(kù),可以在JSP頁(yè)面中分離動(dòng)態(tài)顯示邏輯與靜態(tài)的HTML, 使頁(yè)面代碼更清晰, 可讀性大大提高,Struts是Web應(yīng)用開發(fā)中最為流行的框架之一。
系統(tǒng)正是利用Struts的MVC模式的設(shè)計(jì)理論實(shí)現(xiàn)統(tǒng)一的銷售品視圖與管控平臺(tái),負(fù)責(zé)管理核心IT配置管控流程、統(tǒng)一的產(chǎn)品及銷售品業(yè)務(wù)和系統(tǒng)全視圖能力,最終達(dá)到產(chǎn)品與銷售品集成一點(diǎn)的配置支撐。
3 系統(tǒng)的實(shí)現(xiàn)
本文以銷售品目錄管理模塊為例來(lái)說(shuō)明系統(tǒng)的實(shí)現(xiàn)方法。
3.1 概要說(shuō)明。銷售品目錄管理模塊可細(xì)分為銷售品目錄樹、銷售品目錄列表,銷售品目錄信息表單顯示,銷售品目錄節(jié)點(diǎn)新增,修改,刪除,Excel導(dǎo)出這七個(gè)子功能。
(1)銷售品目錄樹。銷售品目錄樹以樹型結(jié)構(gòu)展現(xiàn)銷售品目錄;銷售品目錄樹上只顯示節(jié)點(diǎn)的名稱,其中根節(jié)點(diǎn)名稱為銷售品目錄。銷售品目錄樹按照目錄節(jié)點(diǎn)的編碼次序展現(xiàn)。
(2)銷售品目錄列表.銷售品目錄列表以列表形式展現(xiàn)銷售品目錄;銷售品目錄列表展現(xiàn)目錄樹上選中節(jié)點(diǎn)的下級(jí)節(jié)點(diǎn)列表,包括銷售品視圖列表;銷售品目錄列表展現(xiàn)的信息包括:節(jié)點(diǎn)名稱、節(jié)點(diǎn)編碼、類型、節(jié)點(diǎn)創(chuàng)建時(shí)間、節(jié)點(diǎn)創(chuàng)建人、節(jié)點(diǎn)修改時(shí)間、節(jié)點(diǎn)修改人;銷售品目錄列表默認(rèn)以目錄節(jié)點(diǎn)的編碼次序展現(xiàn)。
(3)銷售品目錄信息表單。在銷售品目錄列表雙擊某一目錄節(jié)點(diǎn),彈出銷售品目錄節(jié)點(diǎn)表單界面。
銷售品目錄節(jié)點(diǎn)表單界面展現(xiàn)銷售品目錄的基本信息,包括:節(jié)點(diǎn)名稱、節(jié)點(diǎn)編碼、節(jié)點(diǎn)描述、節(jié)點(diǎn)創(chuàng)建時(shí)間、節(jié)點(diǎn)創(chuàng)建人、節(jié)點(diǎn)修改時(shí)間、節(jié)點(diǎn)修改人;
(4)銷售品目錄節(jié)點(diǎn)新增、修改、刪除。在銷售品目錄列表界面上點(diǎn)擊“新增目錄”按鈕進(jìn)入新增、修改、刪除目錄節(jié)點(diǎn)的界面按規(guī)定來(lái)操作。
(5)銷售品目錄Excel導(dǎo)出。將銷售品目錄導(dǎo)出為EXCEL文件。
3.2 實(shí)現(xiàn)框架
3.3 主要邏輯實(shí)現(xiàn)描述:
(1)用戶由系統(tǒng)菜單項(xiàng)點(diǎn)擊銷售品目錄管理鏈接(鏈接URL構(gòu)建菜單項(xiàng)時(shí)從數(shù)據(jù)庫(kù)讀出)
url:../salesitemListInfo/saleitemlist.domathed=’SalesitemtListInfo’
(2)URL 請(qǐng)求服務(wù)進(jìn)入SalesitemListInfoAction
(3)系統(tǒng)執(zhí)行salesItemListInfo () 方法 在此方法中從request獲取 請(qǐng)求參數(shù) 將ActionForm 數(shù)據(jù)放入VO
(4)在salesItemListInfo ()方法中 執(zhí)行DAO層SalesItemListDao 類的靜態(tài)方法獲得DAO對(duì)象實(shí)例
(5)返回DAO 對(duì)象實(shí)例
(6)調(diào)用DAO實(shí)例的getSalesItemListInfo 方法
(7)執(zhí)行JDBC方法得到數(shù)據(jù)集并封裝VO到list中
(8)返回List到Action
(9)返回ActionFoward 請(qǐng)求轉(zhuǎn)發(fā)到JSP 頁(yè)面 用 Ext框架展現(xiàn)信息列表
(10)銷售品目錄信息表單查看
在產(chǎn)品信息列表界面點(diǎn)擊某條記錄行,則在列表下方的(productlistcard.jsp)顯示記錄的詳情表單信息。通過(guò)ID查詢出記錄信息,通過(guò)ID查詢出記錄信息,返回ProductListVo對(duì)象,封裝ActionForm,請(qǐng)求轉(zhuǎn)發(fā)到JSP頁(yè)面,銷售品目錄節(jié)點(diǎn)新增。
(1)在節(jié)點(diǎn)新增頁(yè)面 填寫表單數(shù)據(jù)后,點(diǎn)擊保存按鈕 觸發(fā)URL請(qǐng)求
(2)SalesItemsListAction 處理新增節(jié)點(diǎn)請(qǐng)求取出ActionForm表單數(shù)據(jù)并封裝到Vo
(3)執(zhí)行SalesItemsListDao class的inserSalesItemsList()方法
(4)返回?cái)?shù)據(jù)新增處理結(jié)果,返回值true或1
(5)將處理結(jié)果轉(zhuǎn)發(fā)到JSP頁(yè)面處理
4 結(jié)束語(yǔ)
本文以理論結(jié)合實(shí)際來(lái)闡述Struts在實(shí)際項(xiàng)目中的應(yīng)用,并通過(guò)對(duì)模塊的分解,包含每個(gè)模塊流程的包圖、時(shí)序圖、類圖和相關(guān)演示原始界面。很詳細(xì)的展示了基于MVC的Struts的實(shí)現(xiàn)方式和優(yōu)點(diǎn)。系統(tǒng)整體功能模塊權(quán)責(zé)劃分明確,在架構(gòu)分層方面并充分發(fā)揮struts靈活的數(shù)據(jù)訪問(wèn)方式,同時(shí)也減輕了服務(wù)器端的負(fù)擔(dān),保證整個(gè)系統(tǒng)運(yùn)行順暢穩(wěn)定。系統(tǒng)當(dāng)前己部署到上海電信測(cè)試網(wǎng)絡(luò)中,經(jīng)評(píng)測(cè),各功能模塊運(yùn)轉(zhuǎn)正常。
參考文獻(xiàn):
[1]鄧連瑾,尤德祥.基于MVC設(shè)計(jì)模式的Struts架構(gòu)[J].天津職業(yè)院校聯(lián)合學(xué)報(bào),No.5 Vol 13.
[2]李國(guó)順.如何建立統(tǒng)一的電信銷售品體系[J].通信世界,2010,39.