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