- 相關(guān)推薦
J2EE在電子商務(wù)中的應(yīng)用
工作流管理技術(shù)通過提供一種新的機制協(xié)助企業(yè)進行更有效的生產(chǎn)與流通管理以及決策支持。小編下面為你整理了關(guān)于J2EE在電子商務(wù)中應(yīng)用的文章,希望對你有所幫助。
一、引言
工作流的概念是為提高工作效率的研究而產(chǎn)生的,最初被應(yīng)用于辦公自動化和生產(chǎn)組織領(lǐng)域,通過將文檔、信息或任務(wù)按照預(yù)先定義好的規(guī)則在參與者之間進行傳遞,其目的是通過將工作分解成任務(wù)、角色,按照一定的規(guī)則和過程來執(zhí)行這些任務(wù)并對它們進行監(jiān)控。工作流管理是CSCW(Computer Support Cooperative Work)研究領(lǐng)域的一個重要分支,它已經(jīng)被實踐證明能夠大大提高管理過程的效率、降低生產(chǎn)成本、提高企業(yè)生產(chǎn)經(jīng)營管理水平。
企業(yè)的電子商務(wù)活動中,大量業(yè)務(wù)工作都是由兩個或兩個以上的員工共同參與合作來完成的,這一系列相關(guān)的活動以及活動按照一定規(guī)則的變化過程就構(gòu)成了電子商務(wù)業(yè)務(wù)流程,例如銷售訂單管理流程、行政申請流程、財務(wù)審批流程、客戶服務(wù)流程及人事處理流程等。在電子商務(wù)中,能否更快地對客戶需求做出反應(yīng),在市場需求變化時對商務(wù)流程做出及時調(diào)整,是企業(yè)提升競爭力的有效手段。開發(fā)商務(wù)工作流程管理系統(tǒng)是企業(yè)解決上述難題的有效辦法。
二、基于J2EE與Web的工作流系統(tǒng)體系結(jié)構(gòu)
J2EE提供了企業(yè)級的計算模型和運行環(huán)境,使用EJB Server作為商業(yè)組件的部署環(huán)境,在EJB Server容器中提供了分布式計算環(huán)境中組件需要的所有服務(wù)(JTS、JMAPI、JMS、JNDI等)。實現(xiàn)商業(yè)邏輯的EJB組件可以更高效的運行在應(yīng)用服務(wù)器中,支持多種客戶端的訪問。J2EE使企業(yè)級應(yīng)用具有安全性、可擴展性和可靠性,使用J2EE作為工作流的開發(fā)平臺符合電子商務(wù)建設(shè)的應(yīng)用需求。
電子商務(wù)平臺中工作流系統(tǒng)的實現(xiàn)采用的是三層體系結(jié)構(gòu),基于J2EE和WEB的工作流系統(tǒng),核心服務(wù)采用EJB實現(xiàn)。三層分別是客戶應(yīng)用層、商務(wù)邏輯層、數(shù)據(jù)層。
1.應(yīng)用層
是工作流平臺的用戶應(yīng)用部分,采用HTML技術(shù),用戶通過Web瀏覽器參與業(yè)務(wù)流程處理?蛻舳酥惶峁┯脩糇烂娉绦蚪缑妫蛻舳顺绦蜇撠煿芾硭信c工作流引擎的溝通,并為用戶提供針對企業(yè)具體業(yè)務(wù)內(nèi)容所定制的任務(wù)清單?蛻舻卿浌ぷ髁骶W(wǎng)站并進行身份驗證之后會進入不同的界面進行各自的工作。在企業(yè)內(nèi)部,客戶應(yīng)用層中的用戶可分為四種類型:工作流設(shè)計人員、系統(tǒng)管理員、高層領(lǐng)導者和普通用戶,他們分別通過Web界面完成特定的工作。
2.商務(wù)邏輯層
邏輯層的實現(xiàn)主要利用EJB技術(shù),它接受Web層發(fā)來的請求數(shù)據(jù),并依此進行相應(yīng)的動作,完成事先定義的任務(wù),并且把下一步的要求回送給Web層。邏輯層包括工作流引擎、Web服務(wù)器、App服務(wù)器、電子商務(wù)業(yè)務(wù)組件。工作流引擎以組件形式封裝,用戶可以調(diào)用其中的接口。Web組件運行在Web服務(wù)器上,主要負責與客戶的交互。系統(tǒng)通過Web服務(wù)器的JSP/HTML/XML/Applet等收集客戶端發(fā)來的信息和數(shù)據(jù),并通過Servlet調(diào)用EJB服務(wù)器中的EJB組件進行處理并將結(jié)果返回到Web頁面。應(yīng)用組件、EJB組件運行在App服務(wù)器上,負責發(fā)布和管理EJB組件、管理組件的生命周期、連接數(shù)據(jù)庫、并發(fā)操作、分布式事物處理等。
工作流執(zhí)行服務(wù)組件是工作流管理系統(tǒng)的重要組成部分,搭建在J2EE應(yīng)用服務(wù)器之中。執(zhí)行服務(wù)組件包含工作流執(zhí)行服務(wù)器,由工作流引擎實現(xiàn),組件還提供用戶客戶端應(yīng)用程序模板和工作列表查詢工具,為上層MIS調(diào)用提供API。在技術(shù)實現(xiàn)上,主要采用JSP、Servlet、EJB,整體采用B/S、C/S混合結(jié)構(gòu),客戶端工作流相關(guān)信息查詢采用B/S,具體業(yè)務(wù)邏輯通過RMI機制或Soap機制調(diào)用放在服務(wù)器端的EJB組件來完成。
對于B/S部分,采用MVC模式,在該模式中Servlet作為Controller角色,負責處理請求與頁面流轉(zhuǎn),EJB充當Model角色,封裝業(yè)務(wù)邏輯與數(shù)據(jù),JSP充當View角色,它是數(shù)據(jù)表現(xiàn)層,生成用戶顯示界面。具體實現(xiàn)步驟是:當JSP頁面收到客戶端發(fā)來的消息后,根據(jù)需要,由Servlet控制業(yè)務(wù)流轉(zhuǎn),把實際處理工作交給JavaBean來做,JavaBean根據(jù)需要調(diào)用合適的組件完成相應(yīng)的工作,Bean可以利用RMI機制調(diào)用本地App組件,也可以直接調(diào)用自動應(yīng)用組件和企業(yè)原有應(yīng)用組件,還可以通過SOAP機制調(diào)用遠程服務(wù)組件。
3.數(shù)據(jù)層
它是工作流平臺的數(shù)據(jù)基礎(chǔ),由工作流模型數(shù)據(jù)庫、工作流實例數(shù)據(jù)庫和工作流組織數(shù)據(jù)庫組成,主要負責對工作流系統(tǒng)中的模型數(shù)據(jù)、實例數(shù)據(jù)和組織數(shù)據(jù)進行存儲、組織與維護。邏輯層與數(shù)據(jù)層DBMS的連接是通過JDBC來完成的,可以對大部分商用關(guān)系數(shù)據(jù)庫提供支持。
基于工作流技術(shù)的電子商務(wù)系統(tǒng)的功能模塊包括銷售管理、庫存管理、采購管理、訂單管理、人事管理、客戶管理、系統(tǒng)管理、用戶管理。系統(tǒng)中的用戶:系統(tǒng)管理員、企業(yè)職員、客戶、供應(yīng)商等分別登錄到相應(yīng)的Web頁面,進行相關(guān)的工作。工作流管理是系統(tǒng)的核心部分,其實質(zhì)是工作流引擎,它提供了工作流系統(tǒng)在過程定義、任務(wù)分派、系統(tǒng)運行、監(jiān)控執(zhí)行等服務(wù)。
三、工作流引擎的設(shè)計
1.工作流引擎實現(xiàn)方法
工作流引擎采用EJB組件技術(shù)實現(xiàn),封裝了相應(yīng)的業(yè)務(wù)邏輯,工作流引擎的運行主要就是對象之間的交互和接口對對象的調(diào)用,以及它們對數(shù)據(jù)庫進行的各種讀寫操作。根據(jù)引擎提供的功能,引擎由四個方面的管理功能組成:工作流模板管理、過程實例管理、活動實例管理、用戶角色管理。主要的實體Bean包括:過程實例Bean、活動實例Bean、角色Bean、部門Bean、職員Bean、規(guī)則Bean、團隊Bean、任務(wù)項Bean。
(1)工作流模板管理Bean
包括的方法有:模板創(chuàng)建、刪除模板、模板實例化、保存到數(shù)據(jù)庫。
(2)過程實例管理Bean
包括的方法有:初始化過程實例、啟動過程實例、掛起過程實例、終止過程實例、刪除過程實例、重啟過程實例。
(3)活動實例管理Bean
包括的方法有:開始活動實例、掛起活動實例、重啟活動實例、終止活動實例、獲得活動實例列表、取消活動實例。
(4)用戶角色管理Bean
包括的方法有:添加用戶、設(shè)置用戶角色、刪除用戶、添加角色、刪除角色。
2.工作流過程實例管理
采用XML語言來表示電子商務(wù)過程模型,過程模型主要由這些實體組成:過程、活動、路由規(guī)則、工作流相關(guān)應(yīng)用。例如在電子商務(wù)訂單確認過程模型中:首先,企業(yè)銷售部門對訂單上的數(shù)據(jù)進行驗證,對填寫錯誤的訂單轉(zhuǎn)到退出,對填寫正確的訂單進行處理;然后,根據(jù)客戶選擇的不同支付方式,當使用信用卡支付時,把客戶信用卡信息發(fā)送給信用卡服務(wù)器進行審批,確認支付額是否被認可;最后,發(fā)送訂單確認信息給客戶。
在工作流過程實例啟動時,工作流引擎把XML定義實例化后,經(jīng)過XML解析器的解析,生成過程、活動、流轉(zhuǎn)路由等對象,再保存于數(shù)據(jù)庫相應(yīng)的表中。過程模型中的實體被封裝成對象,包括:活動結(jié)點(Activity)、過程(Process)、路由節(jié)點(Rule)、工作流相關(guān)應(yīng)用(WorkflowApp)。對象的基本屬性包括ID、名稱等,并且具有共同的方法:(1)ContverttoXML():將模型元素的屬性轉(zhuǎn)換為XML格式的數(shù)據(jù),以便于保存為XML文件;(2)SavetoDB():此方法將模型中元素的信息保存到數(shù)據(jù)庫中特定的表中。
工作流過程實例的執(zhí)行可以看作是一個狀態(tài)變遷,其狀態(tài)有:初始化、運行、激活、掛起、結(jié)束、停止。工作流引擎調(diào)度中心根據(jù)不同的條件,例如,啟動過程、執(zhí)行任務(wù)、結(jié)束任務(wù)以及其他事件的發(fā)生,會導致工作流過程實例從一個狀態(tài)轉(zhuǎn)換到另一種狀態(tài)。
3.任務(wù)管理
任務(wù)管理主要根據(jù)調(diào)度中心的指示完成諸如任務(wù)創(chuàng)建、任務(wù)狀態(tài)的轉(zhuǎn)換以及相關(guān)數(shù)據(jù)的維護等工作。每次結(jié)束任務(wù)的外部請求將觸發(fā)調(diào)度中心調(diào)用任務(wù)管理為后繼活動(如果存在的話)創(chuàng)建新的實例,其狀態(tài)為“待處理”;同時,其它不同的外部請求也將觸發(fā)任務(wù)管理實施任務(wù)狀態(tài)的切換。任務(wù)的主要狀態(tài)有:初始、處理、暫停、正在處理、完成。
(1)任務(wù)隊列
一個活動可以具有多個實例,每個實例稱為一個任務(wù)。在電子商務(wù)系統(tǒng)中一個任務(wù)對應(yīng)于企業(yè)具體的業(yè)務(wù)步驟。
(2)任務(wù)派發(fā)
任務(wù)派發(fā)處理只針對人工交互活動,是指按照何種準則將任務(wù)分配給具體人員來執(zhí)行。任務(wù)派發(fā)的方式是按角色指定和按人員指定兩種。
(3)任務(wù)狀態(tài)控制方法
工作流引擎對任務(wù)狀態(tài)的控制主要來源于任務(wù)的啟動規(guī)則和后繼規(guī)則實現(xiàn)。啟動規(guī)則是通過相任務(wù)的直接前趨任務(wù)來表示的,啟動規(guī)則包括順序、與連接、或連接、用戶自定義四種規(guī)則。調(diào)度中心在將任務(wù)切換到待處理狀態(tài)之前先進行相關(guān)的啟動規(guī)則檢查,只有滿足啟動條件的任務(wù)才可以進行狀態(tài)的切換。任務(wù)的后繼規(guī)則是指當前任務(wù)結(jié)束后該啟動哪些后繼任務(wù),后繼規(guī)則包含順序、或分支、與分支、用戶自定義四種規(guī)則。
工作流管理技術(shù)通過過程建模和過程管理的核心技術(shù)開發(fā)的企業(yè)電子商務(wù)系統(tǒng)能迅速實現(xiàn)企業(yè)業(yè)務(wù)重組,使電子商務(wù)活動以信息流為基礎(chǔ),可以全面提高企業(yè)協(xié)作能力。在本文所做研究的基礎(chǔ)上,筆者認為可以從以下幾個方面進行深入研究:對具有適應(yīng)的柔性工作流的研究工作、以及如何保證動態(tài)建模方法動態(tài)路由的正確性還有待進一步充實和擴展,對工作流系統(tǒng)的容錯能力、數(shù)據(jù)保護、數(shù)據(jù)恢復(fù)和異常處理策略方面還有待進一步的研究。
【J2EE在電子商務(wù)中的應(yīng)用】相關(guān)文章:
office辦公在電子商務(wù)中的應(yīng)用04-23
高性能J2EE應(yīng)用的技巧07-21
J2EE應(yīng)用的十個技巧08-17
構(gòu)建高性能J2EE應(yīng)用的技巧07-20
J2EE應(yīng)用服務(wù)器08-05