Ofbiz框架在電力工程管理中的應用
摘要 電力工程管理是供電企業的重要工作內容,如何借助現代信息技術提高電力工程的管理水平,是擺在面前的重要課題。本文探討了采用多層體系架構技術,基于ofbiz框架,結合供電企業的工程管理業務,開發高質量、
目前,基于J2EE技術的多層應用體系結構已成為WEB應用中主流,其良好的可擴展性、可移植性及易于維護等特點,使得越來越多的企業應用采用其規范標準。本系統采用基于J2EE技術的多層架構,并對ofbiz框架做了重要的核心重構,研發了擁有自己版權的應用開發平臺--ALT工作流平臺。該平臺嚴格遵循MVC模式,同時整合了ofbiz的實體引擎, 服務引擎, 消息引擎, 工作流引擎, 規則引擎的功能。
該平臺同時具有如下特點:
l 基于靈活的和通用的數據模型
l 靈活有效地使用數據層
l 松耦合多層組件體系結構
l 高級web應用框架
l 基于ALT工作流引擎的流程控制
4.技術核心結構——alt 工作流平臺
alt 工作流應用開發平臺是在ofbiz框架的基礎上,進行了一些具體開發,能夠支持工作流引擎、支持服務引擎、支持實體引擎,有良好的可維護性、可擴展性的一個應用開發的平臺。
CSF說明:
定義于/WEB-INF/web.xml文件中,用于限制用戶對web應用文件的直接存取,此為所有web請求的起點。當請求一個受保護的路徑時,如果在web.xml中定義了redirectPath,則重定向此,如果未定義redirectPath而定義了errorCode,則拋出錯誤,如果二者均未定義,則拋出404錯誤。
ControlServlet說明:
采用前端控制器模式,為所有請求處理的核心,用于分割表示層邏輯與頁面顯示,通過CSF的合法請求開始在此處理,它用事件(命令)和ViewHelper類實現表示層邏輯,在controller.xml中配置web應用流程。ControlServlet初始加載時,在ServletContext中創建Delegator、Security、Dispatcher、RequestHandler對象,可使用JSP <useBean>標簽使用這些對象。
RequestHandler說明:
使用助手類RequestManager收集在Controller.xml中定義的請求映射為一List。
實體引擎說明:
實體引擎有三個主要的類,即GenericDelegator、GenericValue、GenericPK,其中GenericValue為數據庫記錄的封裝,方法與SQL對照關系為create<-àInsert,storeß->Update,removeß->Delete。
在事務處理方面,用TranactionUtil類的beign、commit、rollback方法分割事務。
處理流程簡圖:
要求輸入參數為一Map和DispatchContext,輸出結果在Map中,采用Map主要考慮到Map可序列化以利于通過Soup協議傳輸,服務可通過JobScheduler調度。JobScheduler為一多線程組件,包括一個poller線程和多個revoker線程,在ServiceEngine.xml中可配置相應資源占用情況,作業保存在JobSandBox表中,它主要完成異步服務及定時服務的調度。
接口服務定義主要用于繼承,以實現服務定義的層次化。
ECA(Event Condition Action),與數據庫觸發器原理類似。即當一個服務被調用時,服務引擎查看是否有ECAs為此事件定義了,如果定義了,當條件計算結果為true時,action被執行。Workflow Engine不是線程模式,而是由一組API及通用對象組成,它與實體引擎緊密結合,流程和活動的改變實時持久化,流程定義數據保存在entitymodel_workflow.xml中定義的實體中,運行數據保存在entitymodel_workeffort.xml定義的實體中。流程定義語言采用XPDL,并對其做了一些擴展。
該平臺同時具有如下特點:
l 基于靈活的和通用的數據模型
l 靈活有效地使用數據層
l 松耦合多層組件體系結構
l 高級web應用框架
l 基于ALT工作流引擎的流程控制
系統技術框架
4.技術核心結構——alt 工作流平臺
alt 工作流應用開發平臺是在ofbiz框架的基礎上,進行了一些具體開發,能夠支持工作流引擎、支持服務引擎、支持實體引擎,有良好的可維護性、可擴展性的一個應用開發的平臺。
CSF說明:
定義于/WEB-INF/web.xml文件中,用于限制用戶對web應用文件的直接存取,此為所有web請求的起點。當請求一個受保護的路徑時,如果在web.xml中定義了redirectPath,則重定向此,如果未定義redirectPath而定義了errorCode,則拋出錯誤,如果二者均未定義,則拋出404錯誤。
ControlServlet說明:
采用前端控制器模式,為所有請求處理的核心,用于分割表示層邏輯與頁面顯示,通過CSF的合法請求開始在此處理,它用事件(命令)和ViewHelper類實現表示層邏輯,在controller.xml中配置web應用流程。ControlServlet初始加載時,在ServletContext中創建Delegator、Security、Dispatcher、RequestHandler對象,可使用JSP <useBean>標簽使用這些對象。
RequestHandler說明:
使用助手類RequestManager收集在Controller.xml中定義的請求映射為一List。
實體引擎說明:
實體引擎有三個主要的類,即GenericDelegator、GenericValue、GenericPK,其中GenericValue為數據庫記錄的封裝,方法與SQL對照關系為create<-àInsert,storeß->Update,removeß->Delete。
在事務處理方面,用TranactionUtil類的beign、commit、rollback方法分割事務。
處理流程簡圖:
服務引擎說明:
常用服務引擎類型為java、workflow、jms(用于遠程異步調用)、group、simple、route。要求輸入參數為一Map和DispatchContext,輸出結果在Map中,采用Map主要考慮到Map可序列化以利于通過Soup協議傳輸,服務可通過JobScheduler調度。JobScheduler為一多線程組件,包括一個poller線程和多個revoker線程,在ServiceEngine.xml中可配置相應資源占用情況,作業保存在JobSandBox表中,它主要完成異步服務及定時服務的調度。
接口服務定義主要用于繼承,以實現服務定義的層次化。
ECA(Event Condition Action),與數據庫觸發器原理類似。即當一個服務被調用時,服務引擎查看是否有ECAs為此事件定義了,如果定義了,當條件計算結果為true時,action被執行。Workflow Engine不是線程模式,而是由一組API及通用對象組成,它與實體引擎緊密結合,流程和活動的改變實時持久化,流程定義數據保存在entitymodel_workflow.xml中定義的實體中,運行數據保存在entitymodel_workeffort.xml定義的實體中。流程定義語言采用XPDL,并對其做了一些擴展。
責任編輯:和碩涵
免責聲明:本文僅代表作者個人觀點,與本站無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
我要收藏
個贊
-
現貨模式下谷電用戶價值再評估
2020-10-10電力現貨市場,電力交易,電力用戶 -
PPT | 高校綜合能源服務有哪些解決方案?
2020-10-09綜合能源服務,清潔供熱,多能互補 -
深度文章 | “十三五”以來電力消費增長原因分析及中長期展望
2020-09-27電力需求,用電量,全社會用電量
-
PPT | 高校綜合能源服務有哪些解決方案?
2020-10-09綜合能源服務,清潔供熱,多能互補 -
深度文章 | “十三五”以來電力消費增長原因分析及中長期展望
2020-09-27電力需求,用電量,全社會用電量 -
我國電力改革涉及的電價問題
-
貴州職稱論文發表選擇泛亞,論文發表有保障
2019-02-20貴州職稱論文發表 -
《電力設備管理》雜志首屆全國電力工業 特約專家征文
2019-01-05電力設備管理雜志 -
國內首座蜂窩型集束煤倉管理創新與實踐
-
人力資源和社會保障部:電線電纜制造工國家職業技能標準
-
人力資源和社會保障部:變壓器互感器制造工國家職業技能標準
-
《低壓微電網并網一體化裝置技術規范》T/CEC 150
2019-01-02低壓微電網技術規范
-
現貨模式下谷電用戶價值再評估
2020-10-10電力現貨市場,電力交易,電力用戶 -
建議收藏 | 中國電價全景圖
2020-09-16電價,全景圖,電力 -
一張圖讀懂我國銷售電價附加
2020-03-05銷售電價附加
-
電氣工程學科排行榜發布!華北電力大學排名第二
-
國家電網61家單位招聘畢業生
2019-03-12國家電網招聘畢業生 -
《電力設備管理》雜志讀者俱樂部會員招募
2018-10-16電力設備管理雜志