1.目標(biāo)
1、開發(fā)加油站傳輸報(bào)文數(shù)據(jù)的解析、處理、入庫的接口功能,確保各個加油站上傳的報(bào)文能正常實(shí)時解析并入庫,最終返回對應(yīng)的信號。
2、開發(fā)數(shù)據(jù)的后臺展示功能,實(shí)現(xiàn)實(shí)時數(shù)據(jù)的交互和共享,以確保數(shù)據(jù)的準(zhǔn)確性、可靠性、實(shí)時性;提升整體工作效率和效能,降低單位的管理和運(yùn)行成本;充分利用計(jì)算機(jī)軟件的適應(yīng)性、靈活性和擴(kuò)展性。
3、數(shù)據(jù)實(shí)行權(quán)限管理,不同區(qū)域的用戶、不同權(quán)限的人只能看到自己對應(yīng)的數(shù)據(jù),確保數(shù)據(jù)的安全。
3、軟件構(gòu)架采用 B/S模式,提高平臺兼容性、使用及更新的便利性、不同平臺(例如不同操作系統(tǒng)等)的遷移。
2.系統(tǒng)設(shè)計(jì)
依據(jù)管理系統(tǒng)的特性,本系統(tǒng)基于 J2EE技術(shù)平臺,采用基于 B/S的三層架構(gòu),支持應(yīng)用服務(wù)器,與各個加油站的數(shù)據(jù)系統(tǒng)之間進(jìn)行數(shù)據(jù)交互采用的是 Web Service技術(shù)。
2.1基于 B/S的三層體系結(jié)構(gòu)
B/S:基于 Web構(gòu)建,客戶端只需有瀏覽器即可,無須安裝其他軟件等,只要能夠接入局域網(wǎng)即可,辦公地點(diǎn)不受限制(由客戶網(wǎng)絡(luò)設(shè)置控制),支持移動辦公。
三層體系結(jié)構(gòu):即客戶端/應(yīng)用服務(wù)器 /數(shù)據(jù)庫服務(wù)器。
由于傳統(tǒng)的二層 C/S結(jié)構(gòu)存在以下幾個局限:它是單一服務(wù)器且以局域網(wǎng)為中心的,所以難以擴(kuò)展至廣域網(wǎng)范圍或 Internet的大型應(yīng)用模式;難以管理大量的客戶機(jī);受限于供應(yīng)商,整個系統(tǒng)與特定的應(yīng)用程序聯(lián)系緊密;軟、硬件的組合及集成能力有限。
選用三層結(jié)構(gòu)具有以下優(yōu)點(diǎn):
系統(tǒng)管理簡單,大大減少客戶機(jī)維護(hù)工作量。
提高程序的可維護(hù)性。
進(jìn)行嚴(yán)密的安全管理。
涉密的關(guān)鍵應(yīng)用的安全管理非常重要。在三層結(jié)構(gòu)中,識別用戶的機(jī)構(gòu)是按層來構(gòu)筑的,對應(yīng)用和數(shù)據(jù)的存取權(quán)限也可以按層進(jìn)行設(shè)定。例如,即使外部的入侵者突破了表示層的安全防線,在系統(tǒng)功能層中備有另外的安全機(jī)構(gòu),例如服務(wù)器端校驗(yàn),可阻止入侵者進(jìn)入其他部分。
?可擴(kuò)展性
當(dāng)系統(tǒng)的負(fù)載和系統(tǒng)的用戶不斷增加時,可以改換更高配置的服務(wù)器,或增加幾臺新的服務(wù)器,進(jìn)行恰當(dāng)?shù)呐渲眉纯桑瑹o需對應(yīng)用進(jìn)行任何修改,這樣就可靈活擴(kuò)展系統(tǒng)規(guī)模,提高系統(tǒng)性能。
2.2 J2EE技術(shù)平臺
J2EE是一種利用 Java 2平臺來簡化諸多與多級企業(yè)解決方案的開發(fā)、部署和管理相關(guān)的復(fù)雜問題的體系結(jié)構(gòu)。 J2EE技術(shù)的基礎(chǔ)就是核心 Java平臺或 Java 2平臺的標(biāo)準(zhǔn)版,J2EE不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如“編寫一次、到處運(yùn)行 ”的特性、方便存取數(shù)據(jù)庫的 JDBC API、CORBA技術(shù)以及能夠在 Internet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時還提供了對 Java Servlet API、JSP(Java Server Pages)、 Hibernate、Web Service以及 XML技術(shù)的全面支持。
2.3 JavaScript技術(shù)
前臺使用成熟的 JavaScript框架 ExtJS構(gòu)筑界面和操作流程。提供美觀的界面和方便的操作,給用戶良好的體驗(yàn)。
系統(tǒng)設(shè)計(jì)為主要使用樹和表格來展示數(shù)據(jù)、大部分?jǐn)?shù)據(jù)都能夠直接修改和提交保存。另外 ExtJS在報(bào)表和圖表方面也有不錯的表現(xiàn),基本滿足系統(tǒng)需要,個別特殊報(bào)表將會考慮使用其他報(bào)表工具進(jìn)行制作,例如 eclipse BIRT。
2.4 xml 技術(shù)
考慮 XML有以下特點(diǎn)和作用以及在解決異構(gòu)平臺間數(shù)據(jù)交互時,采用 SOAP協(xié)議和 XML數(shù)據(jù)形式,并且在綜合管理系統(tǒng)中也利用 XML來配置管理文件,因此采用 XML技術(shù)。
?用于支持可擴(kuò)展性
XML是一種自描述數(shù)據(jù)格式。"自描述"的意思是說明內(nèi)容的元數(shù)據(jù)與內(nèi)容本身一起存在。也就是說,XML文檔(或者包含 XML標(biāo)記的文件),在其文件內(nèi)部包含著傳達(dá)給接受者(人或者機(jī)器)關(guān)于如何解釋被標(biāo)記的內(nèi)容和 XML結(jié)構(gòu)的信息。
?用于提供 Web服務(wù)
通過簡單對象訪問協(xié)議(SOAP)、Web服務(wù)描述語言(WSDL)、通用描述發(fā)現(xiàn)和集成(UDDI)為目錄(注冊)定義基于 XML的規(guī)則等協(xié)議為網(wǎng)絡(luò)提供服務(wù)。
?信息發(fā)布作用
信息發(fā)布在企業(yè)的競爭發(fā)展中起著重要作用。服務(wù)器只需發(fā)出一份 XML文件,客戶可根據(jù)自己的需求選擇和制作不同的應(yīng)用程序以處理數(shù)據(jù)。加上 XSL(eXtensible Stylesheet Language)的幫助,使廣泛的、通用的分布式計(jì)算成為可能。
?智能化的 Web應(yīng)用程序和數(shù)據(jù)集成
XML能夠更準(zhǔn)確地表達(dá)信息的真實(shí)內(nèi)容,其嚴(yán)格的語法降低了應(yīng)用程序的負(fù)擔(dān),也使智能工具的開發(fā)更為便捷。來自不同應(yīng)用程序的數(shù)據(jù)也能夠轉(zhuǎn)化到 XML這個統(tǒng)一的框架中,進(jìn)行交互、轉(zhuǎn)化和進(jìn)一步的加工。
2.5 Web Service 技術(shù)
本項(xiàng)目采用 Web Service 技術(shù)解決各異構(gòu)平臺之間信息交互(傳遞)。
Web Service是采用特定技術(shù)封裝成的一個軟件實(shí)體,通過網(wǎng)絡(luò)發(fā)布給其他程序使用。當(dāng) Web Service提供者完成 Web Service開發(fā)并通過“通用描述、發(fā)現(xiàn)和集成(Universal Description,Discovery,and Integration,UDDI)中心”進(jìn)行注冊后,用戶即可使用搜索工具發(fā)現(xiàn)所需要的 Web Service,并按照其提供的“Web Service描述語言(Web Service Description Language,WSDL)”文件所描述的方法對 Web Service進(jìn)行調(diào)用,得到所需要的數(shù)據(jù)并加以顯示或儲存到自己的數(shù)
據(jù)庫中。
Web Service有三個主要的優(yōu)點(diǎn):一是可以跨越防火墻進(jìn)行通信;二是它是一個具有不同粒度的軟件組件,客戶不需要知道它是如何實(shí)現(xiàn)的,只知道如何使用它就可以;三是它*在 Internet上運(yùn)行,用戶只要可以上網(wǎng)就可以使用,非常方便。因此,項(xiàng)目審計(jì)小組可以在異地根據(jù)計(jì)劃項(xiàng)目編號導(dǎo)入項(xiàng)目信息,并且也可以隨時將作業(yè)成果導(dǎo)出到公司總部。
作為一種可重用的軟件組件,Web Services可以很方便地查找,組合或者重組,它具有如下一些基本特征:
良好的封裝性。Web Services是部署在網(wǎng)絡(luò)上的軟件對象,因此自然具備對象那樣良好的封裝性。對于使用者而言,他們僅能看到該對象向外提供的功能接口,而無法獲悉內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。
松散的耦合性。同組件一樣,當(dāng)一個 Web Services的實(shí)現(xiàn)發(fā)生變更時,調(diào)用者通常不會感覺到。對于調(diào)用者來說,只要 Web Services的調(diào)用接口不發(fā)生變化,Web Services的任何變更對他們來講都將是透明的。
協(xié)議的規(guī)范性。與一般的組件和對象相比,Web Services的接口協(xié)議更加規(guī)范,并且更容易被機(jī)器識別和理解。
標(biāo)準(zhǔn)的開放性。作為 Web Services,其所有公共規(guī)范*使用開放的標(biāo)準(zhǔn)協(xié)議進(jìn)行描述﹑傳輸和交換。這些標(biāo)準(zhǔn)協(xié)議具有*公開的規(guī)范定義,因此能夠由任意方單獨(dú)實(shí)現(xiàn)。
高度的集成性。由于 Web Services采用簡單并易于理解的標(biāo)準(zhǔn)Web協(xié)議來描述服務(wù)接口,*屏蔽了不同軟件平臺之間的差異,因此無論是 CORBA﹑DCOM或者 EJB,都可以通過這一標(biāo)準(zhǔn)來實(shí)現(xiàn)相互間的互操作性。
基于 web service技術(shù)的*性和解決跨平臺的數(shù)據(jù)交互,實(shí)現(xiàn)了不同系統(tǒng)信息的順利交互。
2.6技術(shù)性能指標(biāo)
數(shù)據(jù)訪問響應(yīng)時間平均小于 1-5秒,并發(fā)處理用戶≥20。
2.7開發(fā)技術(shù)
采用目前流行的 java語言,采用 maven構(gòu)建,框架為 springmvc、 hibernate;前臺 ui為 easy-ui;數(shù)據(jù)庫采用 mysql,可采用讀寫分離;部署應(yīng)用服務(wù)器可以采用 nginx+tomcat集群負(fù)載;數(shù)據(jù)交互接口協(xié)議采用 webservice(具體數(shù)據(jù)和格式參照附件)
3.軟件功能介紹
管理系統(tǒng)包含系統(tǒng)管理(登陸管理、用戶管理、單位管理、菜單管理、角色管理、權(quán)限管理)、業(yè)務(wù)基本信息及字典(區(qū)域的管理維護(hù)、加油站基本信息及相關(guān)設(shè)備的管理維護(hù))、業(yè)務(wù)數(shù)據(jù)查詢(加油槍數(shù)據(jù)、配置數(shù)據(jù)、報(bào)警數(shù)據(jù)、環(huán)境數(shù)據(jù)、故障數(shù)據(jù))。
3.1系統(tǒng)管理模塊
3.1.1基本功能
系統(tǒng)管理模塊包含登陸管理、用戶管理、組織機(jī)構(gòu)管理、菜單管理、角色管理、權(quán)限管理等系統(tǒng)的基本功能。
1)組織機(jī)構(gòu)管理:管理系統(tǒng)中涉及到的單位信息,以及單位內(nèi)的部門信息;用戶與單位進(jìn)行關(guān)聯(lián)匹配。
2)角色管理:管理系統(tǒng)中的角色,可以對角色進(jìn)行對應(yīng)的菜單權(quán)限分配。操作員和角色是多對一關(guān)系。操作員登錄時根據(jù)對應(yīng)的角色來設(shè)置系統(tǒng)的模塊以及菜單權(quán)限。
3)用戶管理:管理使用系統(tǒng)的操作員,可以對操作員對應(yīng)的單位、角色、密碼、客戶端等信息進(jìn)行設(shè)置、管理。
4)登陸管理:系統(tǒng)登陸采用 SHA-1加密方式登陸,采用了安全驗(yàn)證防治瀏覽器攔截,確保信息安全。
5)菜單管理:系統(tǒng)采用菜單配置界面化。
6)權(quán)限管理:對角色進(jìn)行權(quán)限配置。
3.1.2業(yè)務(wù)基本信息及字典
包含區(qū)域信息管理維護(hù)、加油站基本信息及相關(guān)設(shè)備的管理維護(hù)等系統(tǒng)的基本功能。
1)區(qū)域信息管理維護(hù):針對加油站所在的區(qū)域進(jìn)行配置。
2)加油站基本信息:對各個區(qū)局中加油站基本參數(shù)信息進(jìn)行管理維護(hù)。
3.1.3業(yè)務(wù)數(shù)據(jù)查詢
包含加油槍數(shù)據(jù)、配置數(shù)據(jù)、報(bào)警數(shù)據(jù)、環(huán)境數(shù)據(jù)、故障數(shù)據(jù)等系統(tǒng)的基本功能。
1)加油槍數(shù)據(jù):根據(jù)用戶的區(qū)域角色來查詢相應(yīng)的加油槍數(shù)據(jù)。
2)配置數(shù)據(jù):根據(jù)用戶的區(qū)域角色來查詢相應(yīng)的配置數(shù)據(jù)。
3)報(bào)警數(shù)據(jù):根據(jù)用戶的區(qū)域角色來查詢相應(yīng)的報(bào)警數(shù)據(jù)。
4)環(huán)境數(shù)據(jù):根據(jù)用戶的區(qū)域角色來查詢相應(yīng)的環(huán)境數(shù)據(jù)。
5)故障數(shù)據(jù):根據(jù)用戶的區(qū)域角色來查詢相應(yīng)的故障數(shù)據(jù)。