田亞麗

摘要:針對軟件企業開發的業務需求,本文提出基于PEE架構的企業信息化平臺的解決方案,平臺基于OSGI思想、提供組件概念、支持模塊重復使用,實現了軟件開發的模塊化、組件化、自由定制化開發,提高了隨需應變能力,降低了開發、維護、實施成本。文中詳細介紹了企業應用集成開發平臺的應用背景、組成框架、主要功能、關鍵技術等方面內容。
關鍵詞:企業應用平臺;J2EE;OSGI
中圖分類號:TP311 文獻標識碼:A DOI:10.3969/j.issn.l003-6970.2017.08.039
引言
軟件企業的核心競爭力體現在品牌優勢、產品功能和性能、快速響應需求能力、服務水平等諸多方面。優秀的企業級信息應用和開發平臺,能夠提供集成化、模塊化、個性化、易擴展、易維護、快速響應需求的產品全生命周期技術支撐和保證,從而加快產品開發、方便產品部署和集成、提高個性化需求的響應速度、簡化產品代碼管理、降低項目實施和維護成本,進而能夠整體提高軟件企業的創新能力、開發團隊和產品技術水平、產品交付能力、創收能力和長期發展能力等。
1 系統需求
開發適合本公司特點的企業級應用開發平臺,
是大型軟件產品設計的最佳實踐,是企業級客戶信息化建設的客觀需求,也是軟件企業長期良性發展的必要條件。國際上成功軟件企業的發展歷程證明,擁有自主平臺的軟件公司,在品牌知名度、產品性肯泛、團隊技術水平、交付能力、服務保障能力等諸多方面,和僅擁有特定功能產品的軟件企業相比,有無可比擬的巨大優勢。
2 系統功能
本平臺致力于減少項目開發周期、減輕開發人員的重復模塊開發負擔、降低項目成本、降低項目實施復雜性、以組件的形式做到重復使用、即插即拔。
選定J2EE應用程序服務器為基礎,在不破壞原有功能和技術標準的前提下,通過擴展新的功能模塊、服務和二次開發能力,形成滿足市場定位的企業應用平臺和二次開發平臺。平臺總體框架示意
圖如圖1所示:
平臺功能模塊主要實現了單點登錄、STMP郵件、工具集、基礎功能組件、開發框架、多種業務引擎、平臺助手、基礎應用軟件、二次開發支持等功能。
2.1 單點登錄
單點登錄(SSO),是目前比較流行的企業業務整合的解決方案之一。SSO的定義是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。本平臺采用耶魯大學的CAS項目,其具備最先進的設計理念,體系結構合理、配置簡單、客戶端支持廣泛、技術成熟。
2.2 OSGI容器
OSGI(Open Service Gateway Initiative)技術是面向Java的動態模型系統。通過與應用服務器的集成倉d造一個組件服務式容器,引入Bundles概念,容許任何Bundles插拔、互相引入,從而實現組件的可重用式幵發部署。
2.3 工具集
平臺提供了多種工具助手,以期提供更完美的服務,其中包含集合、時間、文件系統、編碼、加密、OSGI組件訪問等功能。
2.4 ZK框架
ZK是一套以AJAX/XUL/Java為基礎的網頁
應用程序開發框架,用于豐富網頁應用程序的使用界面。是Java寫成的開發工具。
2.5 Quartz定時任務
Quartz是一個開源的作業調度框架,它完全由Java寫成,并設計用于J2SE和J2EE應用中。它提供了巨大的靈活性而不犧牲簡單性。你能夠用它來為執行一個作業而創建簡單的或復雜的調度。
2.6 數據庫JPA
JPA全稱Java Persistence API.JPA通過JDK注解或XML描述對象一關系表的映射關系,并將運行期的實體對象持久化到數據庫中。
JPA的總體思想和現有Hibernate、JDO等ORM框架大體一致??偟膩碚f,JPA包括三個方面的技術:ORM映射元數據、API、查詢語言。
2.7 JBPM工作流
JBPM,全稱是Java Business Process Management業務流程管理),它是覆蓋了業務流程管理、工作流、服務協作等領域的一個開源的、靈活的、易擴展的可執行流程語言框架。JBPM是公幵源代碼項目,使用它要遵循ASL(Apache License Version2.0)和EULA(JBoss End User License Agreement)協議。
2.8 消息推送
平臺提供了三種消息類型,普通、提示、告警,以彈窗形式進行,為用戶及時得到重要通知的反饋提供了方便,也使得二次開發人員不必耗費精力在消息功能插件上的開發,只需調用合適的消息推送函數即可。
2.9 二次開發
基于OSGI思想的二次開發以組件插拔方式實現,允許二次開發人員自由開發自己的Bundle,只需要明白需要引入哪些Bundle以及引入Bundle提供的功能即可。
2.10 集成開發環境
平臺內置多Bundles組件包含了數據庫連接、批處理任務、工作流、報表、消息推送、權限管理、用戶管理、在線用戶監控、安全審計、系統日志等功能,二次幵發人員只需基于這些基本功能Bundles的引用開發業務模塊即可。
3 主要技術方案
系統利用成熟的計算機技術、數據庫技術,統一規劃設計,以計算機網絡、數據庫系統為基礎,以系統架構設計方法為指導,研究、幵發企業應用集成開發平臺。
整個平臺完全基于J2EE技術平臺,采用SOA架構設計來構架;主要采用了工作流控制系統、消息傳遞系統、郵件發送系統實現系統的協調工作;采用CAS技術實現單點登陸;用集成身份認證系統作為系統的身份與安全控制;安全系統按照軍工企業保密要求設計,強化安全性。
4 關鍵技術
4.1 ZK框架
ZK是一套開放源碼、相容于XUL/HTML標準、Java寫成的開發工具。
ZK的使用極大的方便了開發人員,從傳統的JavaScript繁復的代碼量中解脫出來,甚至無需使用JavaScript,而直接使用JAVA語言進行頁面開發,該技術類似與谷歌的GWT,在中國市場具有更加廣闊的應用前景。
4.2 OSGI技術
OSGI服務平臺向Java提供服務,這些服務使Java成為軟件集成和軟件開發的首選環境。Java提供在多個平臺支持產品的可移植性。OSGI技術提供允許應用程序使用精煉、可重用和可協作的組件構建的標準化原語。這些組件能夠組裝進一個應用和部署中。
因為OSGI技術為集成提供了預建立和預測試的組件子系統,所以OSGI技術使你從改善產品上市時間和降低開發成本上獲益。
5 結束語
J2EE企業信息化開發平臺貫徹以人為本的設計理念,以OSGI思想為指導,樹立風格一致的開發環境,體現人性化設計,開發框架友好,易學好用;可以自由定制不同用戶需求的系統界面;軟件功能較強,內容豐富,滿足軟件企業的企業信息化應用系統開發和集成部署要求。