胡紹方++周鳳
摘 要:為了方便企業(yè)高效管理混燃設備的安裝,設計了基于S2SH框架的混燃安裝管理平臺。該平臺由Struts2+Spring+Hibernate三種輕量級框架組成?;诖丝蚣荛_發(fā)安裝管理平臺,能夠提高安裝效率、規(guī)范安裝流程、降低企業(yè)的總成本。該框架層次清晰,降低了系統(tǒng)的耦合性,提高了代碼的復用性及系統(tǒng)的可靠性、安全性和可維護性;界面交互性良好,操作簡單,應用前景廣闊。
關鍵詞:混燃安裝管理平臺;S2SH框架;UML建模;MVC設計模式
中圖分類號:TP393.02 文獻標識碼:A DOI:10.15913/j.cnki.kjycx.2015.20.014
混燃是天然氣和柴油雙燃料混合的能源技術?;烊荚O備是一套用于對現(xiàn)有車輛動力系統(tǒng)進行改裝的機械裝置,主要由系統(tǒng)主控箱、蒸發(fā)罐、液化罐、操控調試儀等組成。其中,系統(tǒng)主控箱和操控調試儀是混燃設備的核心組件。經混燃設備改裝過的車輛,動力更加強勁、能耗更低。當前,混燃設備被逐步推向市場,得到了用戶良好的反饋和評價,其安裝數(shù)量呈現(xiàn)幾何式增長。前期運用混燃設備安裝的車輛相對較少時,企業(yè)采用人工方式管理混燃設備的安裝和維護。但隨著業(yè)務量的增加,如果企業(yè)繼續(xù)采用人工方式管理,就會消耗大量的人力、物力和財力,因此,企業(yè)設計了混燃安裝管理平臺。該平臺的運用,不僅可以提高混燃設備的安裝效率和維護效率,降低企業(yè)成本,也可以使企業(yè)管理層隨時掌握混燃設備的安裝等相關信息,據(jù)此調整企業(yè)未來的銷售計劃和研發(fā)計劃,提高企業(yè)的管理效率。混燃設備的安裝與管理對安裝的順序有嚴格的要求,再加上混燃設備是新推出的系列產品,整個安裝流信息在實際運用中需不斷完善。傳統(tǒng)的開發(fā)方式,代碼量大、冗余度多,不便于測試、擴展和維護;而基于S2SH框架的開發(fā),實現(xiàn)了視圖、控制器和模型三者的完全分離,同時也實現(xiàn)了業(yè)務邏輯層與持久層的分離。如果需要更改數(shù)據(jù)庫,不會對前端造成影響,即使前端有再多的變化,只需對模型層作很少的改動,大大提高了系統(tǒng)的復用性。另外,由于各個分層之間耦合度小,有利于團隊開發(fā)成員并行工作,不僅大大提高了開發(fā)效率,也降低了復雜流程應用開發(fā)和維護的難度。
1 主要技術簡介
1.1 UML建模
UML(Unified Modeling Language,統(tǒng)一建模語言)是一種支持模型化的軟件系統(tǒng)開發(fā)的圖形化語言,在軟件開發(fā)的所有階段都可以使用。UML僅僅為一種建模語言,是軟件開發(fā)的輔助工具。常用的UML圖包括類圖、用例圖、對象圖、交互圖、狀態(tài)圖、活動圖、組件圖、部署圖。通過UML圖,可以將開發(fā)項目直觀地呈現(xiàn)出來,相當于建立了一個介于用戶和開發(fā)人員之間的良好的溝通方式,減少了語言障礙,便于最終達成一致。
1.2 MVC設計模式
MVC設計模式,即模型(model)—視圖(view)—控制器(controller)設計模式,出現(xiàn)于20世紀80年代,之后被廣泛應用于項目開發(fā)中。這種設計模式強制性地將應用程序的輸入、處理過程和輸出過程分開。這樣,它們只需單獨處理自己的任務即可,便于開發(fā)、維護。模型層主要有三層結構,即業(yè)務層、DAO層和持久層,這三層結構在開發(fā)過程中都是由Java類完成的。其中,業(yè)務層負責處理業(yè)務邏輯;DAO層是數(shù)據(jù)訪問對象;持久層可以通過Hibernate實現(xiàn),其模型擁有最多的處理任務。視圖用來顯示數(shù)據(jù),并將數(shù)據(jù)反饋給用戶。簡單的說,視圖就是指用戶界面??刂破饔糜谔幚碛脩粽埱?。當接收到用戶請求時,調用模型層的相關類處理請求,接著返回處理得到的數(shù)據(jù),然后將返回的數(shù)據(jù)通過視圖層處理展示給用戶。運用MVC設計模式可以降低系統(tǒng)的耦合性,將代碼復用功能最大化,便于后期平臺的擴展和維護,但同時也使系統(tǒng)結構更加復雜,增加了實現(xiàn)難度。
1.3 S2SH框架
所謂“S2SH框架”,即將Strut2、Spring和Hibernate這三種技術整合在一塊形成的集成技術。其中,Spring是三大技術的核心。整合時,首先整合Strut2和Spring,然后整合Spring和Hibernate。前者可以認為是向上整合,后者可以認為是向下整合。這樣,各個層次以Spring為中心被整合在一起,降低了程序的耦合性,提高了程序的靈活性、可擴展性和可維護性。Strut2是在WebWork2的基礎上發(fā)展起來的,是一種無侵入式設計,利用攔截器處理用戶提交的請求,因此在其配置文件web.xml中必須注冊核心攔截器。Spring是一個控制反轉(Inversion of Control,IOC)和面向切片編程(Aspect-Oriented Programming)的開源框架,主要管理JavaBean的生命周期,本身可以獨立使用。Hibernate是一個ORM(Object Relation Mapping)框架,其中,O服務層只對對象操作,R是關系數(shù)據(jù)庫,M是對象關系的映射文件。Hibernate的作用是對數(shù)據(jù)庫和程序中的DAO層建立聯(lián)系,將JDBC的操作步驟封裝在一起,使數(shù)據(jù)庫的操作更加便捷。S2SH框架將這三種技術整合在一起,體現(xiàn)了MVC設計模式的中心思想,減輕了開發(fā)負擔,縮短了開發(fā)時間。同時,S2SH框架也是現(xiàn)在Web開發(fā)的主流技術,很多用戶或企業(yè)也都應用了這種框架,其擴展性不斷增強。S2SH框架的優(yōu)點非常多,但它是三個大框架的整合體,對調試過程的要求相對較高。
2 混燃安裝管理平臺的需求分析
基于S2SH框架的混燃安裝管理平臺在實際運用中有以下幾點要求:①要求對安裝混燃設備的車輛信息資源作統(tǒng)一的記錄和評估。車輛信息包括車牌號、車輛所屬單位、駕駛員、駕駛員電話、發(fā)動機型號等。②要求將車輛的評估結果記錄在管理平臺上。只有通過評估、考核的車輛才能進行混燃設備的安裝,記錄設備的安裝位置等信息。對于初次安裝混燃系統(tǒng)的車輛,需要先調試,并記錄調試數(shù)據(jù)。調試數(shù)據(jù)包括發(fā)動機轉速、車速和發(fā)動機溫度等。③要求對安裝混燃設備的車輛進行統(tǒng)計和管理。④要求每一次的安裝流程固定不變——先評估,然后安裝,最后調試。⑤要求每一個用戶都有自己的角色。不同角色的操作內容是不一樣的。⑥要求完善管理平臺的運作規(guī)范,提高運作效率,實現(xiàn)安裝流程的信息化,最終提高企業(yè)的經濟效益。
3 功能結構分析
混燃安裝管理平臺結構包括系統(tǒng)管理、員工管理、安裝流管理和統(tǒng)計管理四個模塊?;烊及惭b管理平臺結構如圖1所示。
圖1 混燃安裝管理平臺結構圖
3.1 系統(tǒng)管理
混燃安裝管理平臺是通過B/S架構實現(xiàn)的,用戶可打開瀏覽器直接訪問。平臺設計的用戶角色包括總經理、主管、評估員、安裝員和調試員。給每個用戶分配一些角色,用戶只能訪問被授權的資源,不能訪問其他資源,這樣可以提高平臺數(shù)據(jù)的安全性。超級管理員可以添加、刪除和更改用戶。各個角色的主要職責如下:①總經理。依據(jù)安裝統(tǒng)計表統(tǒng)計出業(yè)務信息,制訂下一步的銷售計劃;根據(jù)安裝反饋,提出改進建議,完善混燃設備。②主管。管理本部門員工信息,并監(jiān)督管理,協(xié)助本部門技工安裝混燃設備,從而提高工作效率;根據(jù)安裝信息,及時反饋安裝調試過程中出現(xiàn)的問題。③評估員。對有安裝需求的客戶車輛進行評估,并將評估結果反饋給平臺。④安裝員。對評估結果合格的車輛進行混燃設備的安裝,并記錄安裝情況。⑤調試員。對初次完成混燃設備安裝的車輛進行調試,并記錄調試結果。
3.2 員工管理
員工管理,即對員工信息的管理,包括員工基本信息管理和個人業(yè)績管理。通過員工管理,可實現(xiàn)員工信息的添加、刪除和修改功能。
3.3 安裝流管理
混燃是一種創(chuàng)新型能源技術。在安裝流管理過程中,需要首先評估車輛是否具有安裝價值,然后記錄車輛評估的相關信息。評估合格后才能安裝混燃設備。安裝過程中需要記錄混燃設備的安裝數(shù)據(jù),比如設備型號。對于初次安裝的車輛,需要先調試,并記錄調試的相關信息,以備后續(xù)工作(比如維護)使用。調試成功后,整個安裝流程才算結束。簡單的說,安裝流管理就是評估、安裝和調試,這三個步驟必須依次進行。
3.4 統(tǒng)計管理
統(tǒng)計管理是對已經安裝了混燃設備的車輛進行的管理。統(tǒng)計分為兩種方式,即按時間統(tǒng)計和按地域統(tǒng)計。良好的數(shù)據(jù)統(tǒng)計信息能夠直觀地反映企業(yè)當前運營中存在的問題,便于及時解決。
4 關鍵技術的實現(xiàn)
4.1 數(shù)據(jù)源配置
本平臺采用的數(shù)據(jù)庫是免費的數(shù)據(jù)庫軟件MySQL,占用空間小。它的數(shù)據(jù)配置過程如下。
4.1.1 導入數(shù)據(jù)庫連接池開發(fā)包類庫
4.1.2 配置數(shù)據(jù)庫連接的基本信息
4.1.3 配置數(shù)據(jù)連接的其他信息
配置數(shù)據(jù)連接的其他信息,比如數(shù)據(jù)庫連接池初始值大小,連接池最小值、最大值等。數(shù)據(jù)源配置在Spring中的applicationContext.xml文件中,方便修改、切換數(shù)據(jù)源。如果需要更改數(shù)據(jù)庫,無需更改代碼,可以直接切換、修改。
4.2 網頁層的實現(xiàn)
通過融合集成Spring和Strut2,實現(xiàn)了對視圖的良好控制。首先配置Spring監(jiān)聽器,服務器會創(chuàng)建Spring中所有的Bean對象,Hibernate等模型層框架的配置會被加載并創(chuàng)建實例,然后通過filter核心過濾器啟動Strut2框架。
4.2.1 配置Struts2的核心的過濾器
4.2.2 配置Spring用于初始化容器對象的監(jiān)聽器
4.3 事務管理方式
系統(tǒng)采用注解的方式,集中管理對象間的組合關系,易于閱讀、開發(fā)速度快、編譯期間容易發(fā)現(xiàn)錯誤的出處,大大提高了開發(fā)效率。
<!-- 配置聲明式事務管理(采用注解的方式) -->
通過運用以上技術,簡化了開發(fā)的代碼量,同時使業(yè)務邏輯更加清晰易懂,提高了開發(fā)效率,降低了維護難度。
5 結束語
本文介紹了UML建模、MVC設計模式和Spring+Strut2+Hibernate框架,并以某企業(yè)的安裝流程為需求基礎、以S2SH為技術基礎,研究并實現(xiàn)了基于S2SH的混燃安裝管理平臺。按照表示層、業(yè)務層、數(shù)據(jù)庫訪問層三層開發(fā)、組織,不僅提高了軟件的開發(fā)效率,也有利于后期的擴展和維護。在實際運用中,本文研究的模式可大大提高企業(yè)的混燃設備安裝效率,并為企業(yè)的發(fā)展提供數(shù)據(jù)指導。
參考文獻
[1]霍迎秋,唐晶磊,尹秀珍.基于SSH架構的農產品信息交換平臺[J].實驗室研究與探索,2013,32(5).
[2]馮潤民.基于SSH的高校學生管理系統(tǒng)設計與實現(xiàn)[J].計算機工程,2009,35(6).
[3]湘倩,狄文輝,孫冬.基于SSH框架與ajax技術的JavaWeb應用開發(fā)[J].計算機工程與設計,2009,30(10).
[4]申斌,李利民.基于MVC模式S2SH框架的庫存管理系統(tǒng)[J].實驗室研究與探索,2014,33(11).
[5]吳志霞,陳平.基于S2SH的在線項目管理平臺的設計與實現(xiàn)[J].計算機與現(xiàn)代化,2011(8).
[6]范新燦,趙明.基于Struts+Hibernate+Spring的輕量級架構開發(fā)應用研究[J].現(xiàn)代計算機(專業(yè)版),2010(1).
[7]姜雷.基于JAVA 技術的實驗室管理系統(tǒng)的設計與實現(xiàn)[D].成都:電子科技大學,2012.
[8]楊鐘鳴.基于SSH框架的社區(qū)管理信息系統(tǒng)設計[J].東華理工人學學報(自然科學版),2010,33(4).
[9]梁國健.基于ajax技術和HTML5的實驗室管理系統(tǒng)的設計與實現(xiàn)[D].廣州:中山大學,2012.
[10]李紹平,彭志平.S2SH:一種Web應用框架及其實現(xiàn)[J].計算機技術與發(fā)展,2009,9(8).
[11]鄭阿奇.Java EE基礎實用教程[M].北京:電子工業(yè)出版社,2009.
[12]劉銘徽.基于Struts與Hibernate框架的圖書管理系統(tǒng)研究與設計[J].安徽人學學報(自然科學版),2009,33(3).
〔編輯:劉曉芳〕