許德斌
(合肥職業(yè)技術(shù)學(xué)院 辦公室,安徽 合肥 238000)
?
高校檔案管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)*
許德斌
(合肥職業(yè)技術(shù)學(xué)院 辦公室,安徽 合肥 238000)
摘要:基于對(duì)高校檔案管理系統(tǒng)的分析,應(yīng)用Struts+Hibernate+Spring構(gòu)架開(kāi)發(fā)高校檔案管理系統(tǒng).采用MVC設(shè)計(jì)模式,將整個(gè)系統(tǒng)分為表示層、業(yè)務(wù)處理層、數(shù)據(jù)持久層和數(shù)據(jù)庫(kù)層,提高了系統(tǒng)的可維護(hù)性和重用性.
關(guān)鍵詞:高校檔案管理;Struts;Hibernate;Spring;信息系統(tǒng)
隨著計(jì)算機(jī)技術(shù)的廣泛應(yīng)用,高校檔案進(jìn)行信息化管理已成為必然趨勢(shì).本文針對(duì)高校檔案管理系統(tǒng)的功能不全,以及軟件開(kāi)發(fā)過(guò)程中不規(guī)范等問(wèn)題,提出了基于Struts+Hibernate+Spring框架結(jié)構(gòu)的高校檔案管理系統(tǒng),以便優(yōu)化檔案信息資源,提高檔案部門(mén)的工作效率.
1系統(tǒng)設(shè)計(jì)
1.1功能設(shè)計(jì)
通過(guò)對(duì)系統(tǒng)的功能需求分析,系統(tǒng)劃分為5大功能模塊:用戶登錄、文件歸檔、檔案管理、檢索利用和系統(tǒng)管理,5大功能模塊下繼續(xù)劃分為14個(gè)次級(jí)功能模塊.主要功能模塊劃分結(jié)構(gòu)如圖1所示.
圖1 系統(tǒng)功能模塊整體結(jié)構(gòu)圖
“用戶登錄”模塊主要用于記錄與用戶相關(guān)的操作,比如待辦事項(xiàng)、已辦事項(xiàng)、消息通知等,方便用戶對(duì)業(yè)務(wù)進(jìn)行處理與查看.
“文件歸檔”模塊主要是完成對(duì)歸檔文件的收集、整理、組卷、入庫(kù)等一系列工作.收集信息的來(lái)源有兩方面,一是由用戶直接進(jìn)行電子著錄;二是通過(guò)歸檔接口獲取其他應(yīng)用系統(tǒng)的歸檔文件信息,進(jìn)入檔案管理系統(tǒng)的文件信息,以工作流的方式,在普通用戶、兼職檔案員、專(zhuān)職檔案員、部門(mén)領(lǐng)導(dǎo)等不同角色間傳遞流轉(zhuǎn),最終完成組卷、檢查、審核等步驟,實(shí)現(xiàn)文件歸檔的全流程控制.
“檔案管理”模塊主要是對(duì)檔案管理系統(tǒng)內(nèi)存儲(chǔ)的檔案信息進(jìn)行維護(hù)管理,包括對(duì)檔案庫(kù)中案卷或文件條目記錄的添加、刪除與修改等操作;對(duì)實(shí)體檔案的銷(xiāo)毀等情況進(jìn)行記錄,以及統(tǒng)計(jì)館(室)藏檔案案卷的歸檔率.
“檢索利用”模塊是用戶查詢檔案和借閱檔案的主要入口,用戶可以在檢索查詢頁(yè)面中對(duì)檔案進(jìn)行檢索與查詢.
“系統(tǒng)管理”模塊是系統(tǒng)管理員對(duì)用戶進(jìn)行管理,包括用戶和角色的添加、刪除、修改,以及角色權(quán)限的變更管理.
1.2系統(tǒng)架構(gòu)
系統(tǒng)采用Struts+Hibernate+Spring構(gòu)架體系,分為表示層、業(yè)務(wù)處理層、數(shù)據(jù)持久層和數(shù)據(jù)庫(kù)層.[1]
其體系結(jié)構(gòu)如圖2所示.
圖2 系統(tǒng)體系結(jié)構(gòu)圖
2關(guān)鍵技術(shù)
系統(tǒng)選用基于MVC模式的Struts+Hibernate+Spring框架技術(shù),實(shí)現(xiàn)高校檔案管理系統(tǒng)的底層數(shù)據(jù)庫(kù)與前臺(tái)界面的設(shè)計(jì).
2.1JSP技術(shù)
JSP技術(shù)使用Java編程語(yǔ)言編寫(xiě)類(lèi)XML的Tags和Scriptlets,封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯;將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì).[2]
2.2J2EE中間件技術(shù)
J2EE是以中間件技術(shù)EJB為基石的一整套開(kāi)發(fā)B/M/S(瀏覽器/中間件/服務(wù)器)多層架構(gòu)的跨平臺(tái)高性能的技術(shù)框架.[3]其基本原理如圖3所示.
圖3 J2EE的基本原理圖
2.3基于MVC設(shè)計(jì)模式的Struts框架
MVC(Model-View-Controller):將軟件系統(tǒng)劃分為控制器(Controller)、視圖(View)和模型(Model),把混亂復(fù)雜的語(yǔ)句強(qiáng)行分離,明確分工和作用.MVC模式結(jié)構(gòu)如圖4所示.
圖4 MVC模式結(jié)構(gòu)
Struts是一個(gè)基于MVC體系結(jié)構(gòu)的Web應(yīng)用程序的框架,具有組件模塊化、靈活性和重用性等優(yōu)點(diǎn),同時(shí)簡(jiǎn)化了Web應(yīng)用程序的開(kāi)發(fā).[4]Struts體系結(jié)構(gòu)如圖5所示.
圖5 Struts體系結(jié)構(gòu)圖
2.4Hibernate框架
系統(tǒng)的數(shù)據(jù)持久化工作是使用Hibernate框架完成的.Hibernate是一種廣泛使用的對(duì)象關(guān)系映射(ORM)解決方案,它對(duì)JDBC進(jìn)行了封裝,開(kāi)發(fā)人員可以用面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫(kù),不必關(guān)心數(shù)據(jù)庫(kù)操作的實(shí)現(xiàn)細(xì)節(jié),開(kāi)發(fā)者也不用編寫(xiě)繁瑣的JDBC代碼,可以專(zhuān)注于對(duì)象關(guān)系的處理,非常適合面向?qū)ο蟮能浖_(kāi)發(fā),并且能夠在不同數(shù)據(jù)庫(kù)系統(tǒng)間進(jìn)行移植,只需改變屬性配置中對(duì)數(shù)據(jù)庫(kù)的描述即可.[5]Hibernate框架結(jié)構(gòu)如圖6所示.
圖6 Hibernate框架結(jié)構(gòu)圖
3系統(tǒng)實(shí)現(xiàn)
(1)根據(jù)高校檔案工作的需求,系統(tǒng)的檔案管理業(yè)務(wù)工作流程如圖7所示.
圖7 檔案管理業(yè)務(wù)工作流程圖
(2)系統(tǒng)采用工作流的方式規(guī)范檔案的收集與整理.系統(tǒng)的歸檔工作業(yè)務(wù)流程如圖8所示.
圖8 歸檔工作業(yè)務(wù)流程圖
(3)系統(tǒng)采用界面控制和內(nèi)容訪問(wèn)控制雙重保障機(jī)制,杜絕高密低流.系統(tǒng)的借閱審批業(yè)務(wù)流程如圖9所示.
圖9 借閱審批業(yè)務(wù)流程圖
(4)通過(guò)編程實(shí)現(xiàn)系統(tǒng)的功能,下面對(duì)實(shí)現(xiàn)中的關(guān)鍵技術(shù)進(jìn)行說(shuō)明.
①服務(wù)端的Servlet配備信息.
②SelfMessageServlet類(lèi)的代碼.
import java.utril.ArrayList;
import java.servlet.ServletException;
import java.servlet.http.HttpServlet;
import java.servlt.http.HttpServletRequest;
import java.servlt.http.HttpServletResponse;
import net.sf.ezmorph.Morpher;
import net.sf.ezmorph.MorpherRegistry;
import net.sf.ezmorph.bean.BeanMorpher
;import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.util.JSONUtils;
import ams.sf.model.SelfMessage;
import ams.SystemManager;
public class SelfMessageServlet extends HttpServlet {
protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException
{
System.out.println(〝調(diào)用doPost方法〞);
Response.setContentType(〝text;html;charset=utf-8〞);
String filterText=request.getParameter(〝filter_text〞);
HttpSession session=Request.getSession();
String userId=session.getAttribute(〝CurrentUserId〞);
try{
ArrayList messagsList=BusinessManager.getSelfMessages(userId,filterText);
}
Catch(Exception ex) {
ex.printStackTrace();
throw ex;
}
Response.out.println(JSONArray.fromObject(messageList));
}
}
③BusinessManager類(lèi)封裝主要的業(yè)務(wù)邏輯代碼,負(fù)責(zé)完成業(yè)務(wù)流程的實(shí)際工作.getSelfMessages函數(shù)的主要代碼.
Public SelfmMessages querySelfMessageByUserId(int usermessage_id,Srtingfilter_text)
{
SelfmMessages msgs=new SelfmMessages();
Try{
String strSql;
strSql=〝frow SelfMessages where user_id=:user_id and message_text like:filter_text〞;
SessionFactory sf;
Sf=new Configration().configure().buildSessionFacrory();
Session session=sf.openSession();
Transaction tx=session.begin Transaction();
Query query=session.createQuery(strSql);
query.setInteger(〝user_id〞,user_id);
query.setString(〝filter_text〞,filter_txt);
List result=query.list();
tx.commit();
msgs.setRows(result);
msgs.setTotal(result.size());
session.close();
}catch(HibermateException ex) {
Ex.printStackTrace();
throw ex;
}
return msgs;
}
④類(lèi)SelfMessage與數(shù)據(jù)庫(kù)表SELF_MESSAGE之間的映射關(guān)系.
4結(jié)語(yǔ)
基于高校檔案信息化建設(shè)的需要,從高校檔案管理系統(tǒng)的可用性等方面進(jìn)行研究,完成了系統(tǒng)的結(jié)構(gòu)劃分、工作流程、以及數(shù)據(jù)庫(kù)等設(shè)計(jì).該系統(tǒng)設(shè)計(jì)從檔案的收集、整理、組卷到檔案的保管、利用都滿足了高校對(duì)檔案管理的功能需求,整個(gè)歸檔流程可控制、可監(jiān)督,有效地保證了歸檔工作的質(zhì)量.
參考文獻(xiàn):
[1]劉銘徽.基于Struts與Hibernate框架的圖書(shū)館管理系統(tǒng)研究與設(shè)計(jì)[J].安徽大學(xué)學(xué)報(bào)(自然科學(xué)版),2009(3).
[2]王墨林,鄭有飛.基于JSP的新生報(bào)到管理系統(tǒng)的研究與設(shè)計(jì)[J].計(jì)算機(jī)軟件與應(yīng)用,2014(5).
[3]胡永波,林財(cái)興.基于J2EE結(jié)構(gòu)的檔案目錄中心系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦開(kāi)發(fā)與應(yīng)用,2004(9).
[4]杜選.基于MVC模式的Struts框架在大型網(wǎng)站開(kāi)發(fā)中的應(yīng)用[J].中國(guó)教育信息化,2008(17).
[5]李寒冰.高校檔案管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連海事大學(xué),2014.
(責(zé)任編輯:王前)
DOI:10.13877/j.cnki.cn22-1284.2016.06.006
*收稿日期:2016-02-25
作者簡(jiǎn)介:許德斌,男,安徽廬江人,副研究館員.
中圖分類(lèi)號(hào):TP31
文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1008-7974(2016)03-0015-04
通化師范學(xué)院學(xué)報(bào)2016年6期