劉 轉(zhuǎn)
(西安體育學(xué)院運(yùn)動(dòng)訓(xùn)練系,西安,710068)
基于SSH技術(shù)架構(gòu)的高校學(xué)生管理系統(tǒng)的設(shè)計(jì)
劉 轉(zhuǎn)
(西安體育學(xué)院運(yùn)動(dòng)訓(xùn)練系,西安,710068)
本文主要采用MVC設(shè)計(jì)模式的多層體系方法,應(yīng)用Spring+Struts+Hibernate的技術(shù)框架設(shè)計(jì)并實(shí)現(xiàn)了高校學(xué)生管理系統(tǒng)的相應(yīng)功能,從而證明基于SSH技術(shù)的高校學(xué)生管理系統(tǒng)框架層次清晰,系統(tǒng)的靈活性、可復(fù)用性皆得到了提高。
MVC設(shè)計(jì)模式;SSH框架;學(xué)生管理系統(tǒng)
學(xué)生作為高校中最強(qiáng)大的群體,對(duì)他們的管理工作是一項(xiàng)龐大而艱巨的任務(wù),可以說(shuō)學(xué)生管理工作時(shí)整個(gè)學(xué)校管理的核心和基礎(chǔ)。而且隨著高校擴(kuò)招,學(xué)生的規(guī)模不斷的擴(kuò)大,高校學(xué)生管理工作面臨著管理范圍不斷擴(kuò)大、業(yè)務(wù)涉及日益復(fù)雜等諸多挑戰(zhàn),各高校目前迫切需要一個(gè)高效、能夠隨需應(yīng)變的學(xué)生管理信息化工作平臺(tái)的支持。如今,基于MVC設(shè)計(jì)結(jié)構(gòu)的學(xué)生管理系統(tǒng)廣泛地應(yīng)用于高校學(xué)工工作領(lǐng)域,對(duì)學(xué)生實(shí)施現(xiàn)代信息化管理。筆者對(duì)輕量級(jí)開(kāi)源框架Struts,Spring,Hibernate各自的特點(diǎn)做了深入研究,并將目前最為流行的Struts+
Spring+Hibernate組合框架作為高校學(xué)生管理系統(tǒng)的解決方案,這是當(dāng)今Web應(yīng)用開(kāi)發(fā)的常用框架,三種技術(shù)有機(jī)結(jié)合起來(lái)構(gòu)建成SSH技術(shù)框架能夠發(fā)揮各自的優(yōu)勢(shì),不僅能夠?qū)ο到y(tǒng)的開(kāi)發(fā)效率有所提高,而且對(duì)于系統(tǒng)的穩(wěn)定性、安全性都有良好的改進(jìn)。
SSH集成框架能夠支持多種主機(jī)類型和操作系統(tǒng),完全符合J2EE的設(shè)計(jì)標(biāo)準(zhǔn)。SSH架構(gòu)可分為表現(xiàn)層、業(yè)務(wù)邏輯層、持久層、領(lǐng)域模塊層,如圖1所示。同時(shí)它能夠非常清楚的定義每一層的功能和職責(zé),通過(guò)接口在層之間的通信提高系統(tǒng)的開(kāi)發(fā)速度、可維護(hù)性及可拓展性。
圖1 SSH系統(tǒng)結(jié)構(gòu)
1.1 Struts框架技術(shù)
Struts是在Jakarta項(xiàng)目下開(kāi)發(fā)的開(kāi)放源碼軟件,它很好地實(shí)現(xiàn)了MVC設(shè)計(jì)模式。MVC是一種在Web項(xiàng)目開(kāi)發(fā)中廣泛使用的設(shè)計(jì)模式,全稱是Model-View-Controller,即模型-視圖-控制器。它能夠減少各應(yīng)用組件在程序?qū)用嫔系穆?lián)系,降低耦合度,提高應(yīng)用程序的可維護(hù)性。圖2所示即Struts的工作原理圖。
圖2 Struts工作原理
1.2 Spring框架技術(shù)
Spring是一個(gè)開(kāi)源框架,主要由Spring AOP、Spring ORM、Spring DAO、Spring Web、Spring Context、Spring Core以及Spring Web MVC七個(gè)定義良好的模塊組成,它能夠?qū)崿F(xiàn)控制反轉(zhuǎn)和面向切面編程的開(kāi)源框架。Spring框架圖如圖3所示。
圖3 Spring框架圖
1.3 Hibernate框架技術(shù)
Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC API進(jìn)行了輕量級(jí)封裝,負(fù)責(zé)Java對(duì)象的持久化。Hibernate的核心接口共有五個(gè),它們?cè)谌魏伍_(kāi)發(fā)中都會(huì)用到。
2.1 系統(tǒng)功能模塊設(shè)計(jì)
學(xué)生管理涉及到學(xué)校的多個(gè)部門,且內(nèi)容廣泛,主要是對(duì)所有在校大學(xué)生的全方位的管理,因此需要各部門之間的相互協(xié)作,同時(shí)需要學(xué)生和教師的積極配合,確保學(xué)生管理系統(tǒng)中信息的真實(shí)性、穩(wěn)定性,實(shí)現(xiàn)學(xué)校各項(xiàng)學(xué)生管理工作的數(shù)字化、科學(xué)化,使學(xué)校各相關(guān)部門共享學(xué)生管理的各項(xiàng)數(shù)據(jù)。根據(jù)高校學(xué)生管理工作的實(shí)際需求,本系統(tǒng)主要功能模塊具體劃分如下:用戶登錄管理、學(xué)籍檔案管理、宿舍管理、社團(tuán)管理、黨團(tuán)管理、綜合測(cè)評(píng)管理、獎(jiǎng)懲管理、獎(jiǎng)助貸管理、心理健康管理、系統(tǒng)管理等。學(xué)生綜合管理系統(tǒng)功能設(shè)計(jì),如圖4所示。
圖4 系統(tǒng)功能結(jié)構(gòu)
2.2 系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)
本文采用目前最為流行的SSH整合框架對(duì)高校學(xué)生管理系統(tǒng)進(jìn)行開(kāi)發(fā),將Struts,Spring和Hibernate三種框架各自的特點(diǎn)相結(jié)合,揚(yáng)長(zhǎng)避短,使框架更加高效。其中,表示層的實(shí)現(xiàn)由Struts負(fù)責(zé),業(yè)務(wù)邏輯層由Spring負(fù)責(zé)實(shí)現(xiàn),數(shù)據(jù)持久層的實(shí)現(xiàn)由Hibernate負(fù)責(zé),它能夠完成對(duì)象和關(guān)系的映射。
高校綜合管理信息系統(tǒng)由多個(gè)模塊組成,本文以系統(tǒng)的個(gè)別模塊為例一一闡述系統(tǒng)各層的具體實(shí)現(xiàn)方法。
3.1 表示層的具體實(shí)現(xiàn)
基于Struts表示層是面向客戶的界面,主要管理用戶的請(qǐng)求,并做出響應(yīng),再將響應(yīng)結(jié)果反饋給用戶,如此便實(shí)現(xiàn)了MVC設(shè)計(jì)模式,分離了業(yè)務(wù)數(shù)據(jù)、頁(yè)面展示以及動(dòng)作處理這三者,實(shí)現(xiàn)其控制功能。例如學(xué)生在系統(tǒng)中填寫助學(xué)貸款申請(qǐng)單Dksq AddForm.jsp,再提交輔導(dǎo)員審核。其中,Struts-config.xml是Struts的核心,MVC中Controller的角色由Action-Servlet來(lái)承擔(dān),業(yè)務(wù)邏輯、動(dòng)作處理、鏈接轉(zhuǎn)向用Action類來(lái)實(shí)現(xiàn)。Struts控制器組件主要負(fù)責(zé)用戶請(qǐng)求的接收、更新模型等一系列工作,實(shí)現(xiàn)視圖與模型之間的調(diào)度。
3.2 業(yè)務(wù)邏輯層的實(shí)現(xiàn)
在項(xiàng)目開(kāi)發(fā)時(shí),業(yè)務(wù)層由于系統(tǒng)不同而存在著差別,因而設(shè)計(jì)者應(yīng)盡量考慮統(tǒng)一業(yè)務(wù)多種實(shí)現(xiàn)的兼容和可擴(kuò)展性。借助Spring框架,能夠處理該層應(yīng)用程序的業(yè)務(wù)邏輯和業(yè)務(wù)校驗(yàn),管理該層各項(xiàng)事務(wù)。而Spring的反轉(zhuǎn)控制機(jī)制則能夠降低業(yè)務(wù)組件之間的耦合度,增強(qiáng)系統(tǒng)擴(kuò)展性。對(duì)于Struts的Action對(duì)象,本文利用Spring對(duì)其進(jìn)行管理,不僅能夠避免在程序中直接編寫組件的依賴關(guān)系建立,同時(shí)還能夠提高Action的性能。
此外,為了使業(yè)務(wù)處理對(duì)象中的Setter方法接收的是接口,從而能夠很松散的定義對(duì)象的實(shí)現(xiàn),本系統(tǒng)開(kāi)發(fā)采用了Spring的IOC機(jī)制和面向接口程序的面向?qū)ο笏枷雽?duì)持久層與業(yè)務(wù)邏輯層之間的交互進(jìn)行處理。Spring配置文件如圖5所示。
class = ”com.gnetis.boss.systemadmin.service.Impl. UserService”>
3.3 數(shù)據(jù)持久層的實(shí)現(xiàn)
在高校學(xué)生信息管理系統(tǒng)開(kāi)發(fā)中,數(shù)據(jù)持久層主要負(fù)責(zé)與數(shù)據(jù)庫(kù)之間的交互,包括數(shù)據(jù)的檢索、刪除、更新等。建立Hibernate的持久層,首先要將域?qū)ο蟪志没瑢?shí)現(xiàn)對(duì)象/關(guān)系映射。在本系統(tǒng)中,為了實(shí)現(xiàn)系統(tǒng)中助學(xué)貸款模塊中信息的更改、刪除、查詢等數(shù)據(jù)操作,定義了映射文件Zxdkxx.hbm.xml,該文件對(duì)應(yīng)了學(xué)生在申請(qǐng)表中填寫的各類詳細(xì)信息,并且包含了對(duì)象關(guān)系映射的元數(shù)據(jù)。
綜上所述,基于SSH技術(shù)架構(gòu)的高校學(xué)生管理系統(tǒng)的開(kāi)發(fā)設(shè)計(jì),實(shí)現(xiàn)了學(xué)生管理工作的信息化、科學(xué)化,縮短了系統(tǒng)開(kāi)發(fā)時(shí)間,降低了數(shù)據(jù)訪問(wèn)難度,提高了系統(tǒng)的可維護(hù)性和可擴(kuò)展性。
[1] 胡志敏.基于Struts/Spring/Hibernate集成框架的人力資源管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù). 2010(11)
[2] 翟高粵,魏娜.一種基于MVC框架的校園管理系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)時(shí)代. 2010(08)
[3] 周嵐.J2EE中SSH架構(gòu)的研究及其在WEB開(kāi)發(fā)中的應(yīng)用[J].淮北職業(yè)技術(shù)學(xué)院學(xué)報(bào). 2011(03)
[4] 寧可.基于Struts和Hibenate的實(shí)驗(yàn)室教學(xué)管理系統(tǒng)的實(shí)現(xiàn)[J].浙江紡織服裝職業(yè)技術(shù)學(xué)院學(xué)報(bào).2011(01)
劉轉(zhuǎn),男,1986.08.11,陜西西安 ,碩士,講師,研究方向:思想政治教育
Design of college student management system architecture based on SSH Technology
Liu Zhuan
(Xi'an Physical Education University sports training department,Xi'an,710068)
This paper multilayer system mainly uses the MVC design pattern,design technology of Spring+Struts+Hibernate application framework and the corresponding functions of university student management system,so that based on the level of college student management system framework of SSH technology is clear,the system flexibility,reusability is improved.
MVC design pattern;SSH framework;student management system