国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SSM整合框架開發(fā)的項目管理系統

2015-06-24 12:32張錦煌吳麗娟梁舒婷
電腦知識與技術 2015年11期

張錦煌++吳麗娟++梁舒婷

摘要:針對學校的重大項目越來越多,對項目的管理要求也越來越高的趨勢,建設一個對學校重大項目管理的項目管理系統具有非常重要的實用價值。根據項目管理系統的業(yè)務功能,該系統采用struts2,spring,mybatis整合框架進行設計開發(fā),選擇Java高級編程語言作為開發(fā)工具。利用該系統可對各種工程的建設項目的整個生命周期進行管理,對于項目的計劃、實施、驗收和效果進行有效地監(jiān)督和管理。

關鍵詞:項目管理系統;SSM整合框架;數據持久層框架;項目生命周期;模塊劃分

中圖分類號:TP315 文獻標識碼:A 文章編號:1009-3044(2015)11-0103-03

Project Management System Based on SSM Integration Framework

ZHANG Jin-huang1 WU Li-Juan2 LIANG Shu-ting3

(1. College of Computer and Electronic Information, Guangxi University, Nanning 530004, China; 2. Information Network Center, Guangxi University, Nanning 53004, China; 3. College of Electrical Engineering, Guangxi University, Nanning 53004, China)

Abstract: In view of the major projects more and more schools, the management of the project requirements have the trend of more and more high, the construction of a major project to the school management of the project management system has very important practical value. Business functions according to the project management system, the system uses the struts2, spring, mybatis integration framework for design and development, select Java high-level programming language as a development tool.To take advantage of this system can be all kinds of engineering construction projects throughout the life cycle of management, to the project plan, implementation and acceptance and effect in the supervision and management effectively.

Key words: project management system; SSM integration framework; data persistence framework; the project life cycle; module partition

隨著高校各重大工程的增多,從而帶來的是學習各部門所申請的項目以及各項目的流程越來越繁瑣,其中尤為關鍵的是每個項目下設備的采購和經費的使用情況更應做到有效地監(jiān)督和管理。然而,目前學校沒有一套比較完善的、易于用戶使用的系統來高效地管理各部門的項目。

傳統的項目管理方式主要是紙張?zhí)顚?,或是電子文檔填寫、郵件發(fā)送的基于文本、報表等紙質的手工處理。項目管理人員需要催辦各個項目流程的進行,隨時對項目進行監(jiān)管、存檔等繁瑣的事務,由于信息處理量大,極易出錯,造成項目流程無法正常運行。而由于整個審批流程的不透明,項目申報人也無法對項目的審批流程實時查詢。因此建設一個對學校重大項目進行管理的項目管理系統是非常必要的,也具有非常重要的實用價值。基于項目管理系統的功能需求,具備可擴展性、可維護性及穩(wěn)定性的特點,系統選用struts2,spring,mybatis整合框架作為技術框架。系統采用B/S結構,一切業(yè)務都在服務端進行,各客戶端無需任何設定,用戶易于使用,并應用maven管理工具對系統進行管理開發(fā),maven的好處在于可以將項目過程規(guī)范化、自動化、高效化以及強大的可擴展性。

1 關鍵技術

1.1 MVC設計模式

MVC設計模式[1]是一種目前廣泛流行的軟件設計模式,它把一個應用的各流程按照Model(模型)、View(視圖)、Controller(控制器)的方式進行分離。本系統所采用的SSM整合框架就是根據MVC設計模式的基礎上發(fā)展起來,其中Struts2就是采用MVC模式建立起來的框架技術,而Struts2正是需要與spring、Mybatis進行無縫的集成,才能真正發(fā)揮MVC模式的作用。

如圖1所示MVC設計模式的工作原理View部分即是應用程序的用戶界面,用戶通過View層發(fā)送請求提交到Controller層;Controller層接受請求根據具體需求調用Model層來處理,再根據Model層調用回來的結果進行跳轉??芍狢ontroller層在整個流程中起到了橋梁的作用,控制數據的流向;而Model層負責業(yè)務邏輯的處理和數據庫訪問。

圖1 MVC設計模式的工作原理

1.2 開發(fā)環(huán)境

1.2.1 開發(fā)語言

本系統采用Java語言進行開發(fā),Java是目前使用最為廣泛的編程語言之一,具有簡單,面向對象,穩(wěn)定,與平臺無關,解釋型,多線程,動態(tài)等特點。

其中與平臺無關是Java語言最大的優(yōu)勢,Java編寫的程序可以在任何安裝了Java

虛擬機JVM的計算機上正確的運行,真正做到“一次寫成,處處運行”。另外Java應用程序被限制在Java運行環(huán)境中,不允許它訪問計算機的其它部分,增加了安全性。

1.2.2 開發(fā)工具

Java IDE(集成開發(fā)環(huán)境)主要有三種,包括:NetBeans、IntelliJ IDEA、MyEclipse。

系統選擇MyEclipse作為系統的開發(fā)環(huán)境。MyEclipse是對EclipseIDE的擴展,利用它可以在數據庫和J2EE的開發(fā)、發(fā)布,以及應用程序服務器的整合方面極大的提高工作效率。MyEclipse也全面支持各種主流的第三方框架,如本系統采用的SSM整合框架,能夠快速高效地進行開發(fā)工作。

1.2.3 項目管理和構建工具

Maven是一個項目構建和管理的工具,提供幫助管理構建、文檔、報告、依賴、scms、發(fā)布、分發(fā)的方法。可以方便的編譯代碼、進行依賴管理、管理二進制庫等等。maven的好處在于可以將項目過程規(guī)范化、自動化、高效化以及強大的可擴展性。利用maven自身及其插件還可以獲得代碼檢查報告、單元測試覆蓋率、實現持續(xù)集成等等。

1.2.4 數據庫

Oracle 數據庫系統是以分布式數據庫為核心的產品,是目前最流行的B/S體系結構的數據庫之一,由于本項目管理系統也采用B/S結構,因此它成為本系統的首選數據庫。另外Oracle數據庫具有處理速度快,安全性高以及處理大數據方面更穩(wěn)定等特點。

1.3 SSM整合框架技術分析

系統采用以spring為核心并整合了struts2和mybatis的3個輕量級框架技術的組合,即SSM整合框架。利用SSM整合框架可開發(fā)出分層、易擴展、易維護的企業(yè)級應用系統。

1.3.1 Struts2 框架

Struts將應用程序分解為業(yè)務邏輯、控制邏輯和表現邏輯,降低了各邏輯層之間的耦合度,增加系統的可擴展性和可維護性。

Sturts2作為Struts的新產品,采用攔截器機制來處理用戶的請求,使得業(yè)務邏輯控制器與Servlet完全脫離開。其工作原理為攔截器攔截用戶請求交給核心控制器(FilterDispatcher)處理,再根據配置文件(struts.xml)信息來指定業(yè)務控制器(Action)來處理數據并返回結果。

1.3.2 Spring 框架

Spring框架主要用于降低系統模塊之間的耦合度。其主要技術包括控制反轉(IOC)和面向切面編程(AOP)兩大方面。

Spring降低耦合度的功能主要通過IOC來實現,IOC是Spring框架的核心,其原理可以理解為程序的所有組件都是被動的,初始化和調用都有容器(Spring)的負責。另外Spring提供了AOP技術,利用AOP可以對業(yè)務邏輯的各個部分進行隔離,如:日志記錄、事務處理等,從而使得業(yè)務邏輯各部分的耦合度降低,提高程序的可重用性和開發(fā)效率。

1.3.3 MyBatis 框架

MyBatis 是一個可以自定義SQL、存儲過程和高級映射的持久層框架。只使用簡單的XML和注解來配置和映射基本數據類型、MAP接口和POJO(簡單的JAVA對象)到數據庫記錄。相比另一流行的持久層框架Hibernate, MyBatis 是一種“半自動化”的ORM(對象關系映射)實現,可以進行更為細致的SQL優(yōu)化減少查詢字段。因為本系統主要是對數據庫的數據進行處理,而且數據量會比較大,結構比較穩(wěn)定,因此對SQL語句應進行更高度的優(yōu)化,所以本系統選擇MyBatis作為數據庫持久層框架。

1.3.4 SSM整合框架

在SSM整合框架中,每一個框架都發(fā)揮著自己最擅長的方面:Struts2注重于降低表現層與邏輯層的耦合度,在視圖層和控制層發(fā)揮作用;Spring 作為整個框架的核心部分,起到了橋梁的作用,對業(yè)務層的層次深化,在業(yè)務層通過其IOC技術的對象依賴注入和AOP技術的事務分離,更深層次的降低了耦合程度;MyBatis 框架主要負責Java對象和關系數據庫之間的映射,在數據持久層上提供數據的訪問。通過應用SSM整合框架,可以將整個系統開發(fā)的結構大致分為如圖2所示。

圖2 SSM框架結構圖

2 系統總體設計

2.1 業(yè)務流程和功能結構

本系統開發(fā)用于管理高校的項目進展流程,其具體業(yè)務主要包括以下幾大方面:1)

工程規(guī)劃管理;2)項目申報管理;3)項目進度管理。主要流程如圖3 所示,系統用戶主要分為兩大類:項目負責人員(包括系統管理員及各層項目管理員)和項目申報人員;工程規(guī)劃管理主要負責工程的增刪改查操作和規(guī)劃文檔的管理(上傳與下載);項目申報管理負責項目資金的分配、項目的申報/審核和項目論證管理;項目進度管理控制著項目的進展流程,包括項目設備采購情況及經費的使用情況兩大模塊。

圖3 項目業(yè)務流程

針對圖3 的業(yè)務流程圖,系統設計了系統管理、工程規(guī)劃管理、項目申報管理、項目進度管理和統計查詢五大模塊,以及每個大模塊下的各個細分功能模塊,具體如圖4所示。

圖4 系統功能結構

2.2 開發(fā)架構

圖5 模塊結構

如圖4所示,系統根據框架結構跟功能將模塊劃分成以下分組:

公共模塊:

1) xmgl-core, 系統的核心模塊,包括系統管理部分及各種工具包;

2) file-manager, 文件管理模塊,主要處理文件的上傳與下載功能;

3) workflow, 工作流模塊,利用工作流方式[4]控制整個項目的流程(申報—>審核—>執(zhí)行)。

系統主模塊:

1) xmgl-csr-dao, 數據層, 與數據訪問相關模塊;

2) xmgl-csr-service, 業(yè)務層,處理業(yè)務接口與實現相關模塊;

3) xmgl-csr-web, 表示層, web設計與邏輯控制相關模塊。

3 結束語

文章結合高校項目管理的特點,提出采用Strut2、Spring、Mybatis三者整合框架SSM的設計思想,設計并實現了高校項目管理系統 。根據項目實際開發(fā)過程與結果,SSM框架很少的降低了項目開發(fā)的耦合度,實現表示層、業(yè)務層與數據層的分離,使得系統開發(fā)過程更合理化,提高系統開發(fā)后的可擴展性和可維護性。該系統已通過測試,在廣西大學投入使用,運行穩(wěn)定、效果良好。

參考文獻:

[1] 張志峰, 朱顥東. Java Web技術整合應用與項目實踐[M]. 北京: 清華大學出版社, 2013.

[2] 劉天真, 董彥軍. 高??蒲许椖抗芾硐到y開發(fā)研究[J]. 中國高??萍寂c產業(yè)化, 2009(12): 52-53.

[3] 羅萍萍, 夏巍. 工程項目管理系統的設計與實現[J]. 電力系統及其自動化學報, 2011, 23(3): 45-53.

[4] 范玉順. 工作流管理技術基礎[M]. 北京: 清華大學出版社, 2001.

[5] Clinton Begin. MyBatis-3-User-Guide[EB/OL]. (2010-05). http://code.google.com/p/mybatis.

[6] 陳紅. 基于SSM框架的智能web管理系統的研發(fā)設計[D]. 北京: 北京化工大學, 2012.

[7] Rod Johnson, Juergen Hoeller, Alef Arendsen, et al. Professional Java Development with the Spring Framework[Z]. 2005.

[8] 任曉鵬, 趙文兵, 張春平. 基于框架的Web系統開發(fā)研究[J]. 計算機工程與設計, 2010, 31(4): 772-774.

[9] 諶湘倩, 狄文輝,孫冬.基于SSH框架與AJAX技術的JavaWeb應用開發(fā)[J]. 計算機工程與設計, 2009, 30(10): 2590-2592.

[10] Peter Z J. Integrated project management system [J]. Journal of Management in Engineering, 1998, 14(3): 38-41.

[11] 張俊萍, 朱小冬. 基于SSM的軟件體系結構開發(fā)過程研究[J]. 計算機測量與控制, 2011, 19(8): 2029-2032.

[12] 王錢, 王蓉, 張利. 基于iBatis 的通用數據持久層的研究與設計[J]. 微計算機信息, 2007, 23(4-3): 172-173.

[13] 范莉婭, 王愛民. 基于Web的全生命周期項目管理系統研究[J]. 機械科學與技術, 2005, 24(5): 529-532.

[14] 王艷清, 陳紅. 基于SSM框架的智能WEB系統研發(fā)設計[J]. 計算機工程與設計, 2012, 33(12): 4751-4757.

[15] 呂濱, 許兆新, 溫麗華. 科研項目管理系統的設計與實現[J]. 黑龍江工程學院學報, 2005, 19(4): 57-59.

[16] 紀燕萍, 王亞慧, 李小鵬. 項目管理實戰(zhàn)手冊[M]. 北京: 人民郵電出版社, 2002.

[17] 尼爾.懷特. 管理軟件開發(fā)項目: 通向成功的最佳實踐[M]. 陳向群, 趙俊峰, 譯. 2版. 北京: 電子工業(yè)出版社, 2002.