張恒銘


摘要:隨著科技飛速的發展以及需求的不斷增加,高校的人事信息發布系統也逐漸凸顯出一些問題。文中介紹了一種基于SpringBoot+MyBatis框架的高校人事信息發布系統設計,通過對高校人事管理的需求分析,歸納了人事管理的功能模塊,然后給出了系統的整體框架,最后使用SpringBoot+MyBatis框架進行開發,實現了該高校人事信息發布系統,具有良好的擴展性,同時也提高了人事管理的效率。
關鍵詞:高校人事信息管理;B/S模式;SpringBoot+MyBatis;Java EE框架
中圖分類號:TP311 文獻標識碼:A
文章編號:1009-3044(2020)18-0068-03
開放科學(資源服務)標識碼( OSID):
1 引言
傳統的高校人事信息化管理效率低下、工作量大,與高校其他部門之間存在數字鴻溝,數據的正確性也存在很大的問題,給人事管理帶來了許多不便。同時因為人事信息的及時性與共享性無法匹配各單位的需求,帶來一些不必要的“人事烏龍”事件等,數據和系統安全性問題也是時有發生。
本文所描述的高校人事信息發布系統綜合了眾多高校人事管理的功能和需求,采用B/S模式、主流的軟件框架和技術設計開發,具有效率高、信息更新及時、良好的共享性,實現了人事管理的高效率網絡化、標準化等特點。
2 系統結構描述
2.1 B/S模式
B/S模式即瀏覽器/服務器模式,通過Web瀏覽器向Web服務器提出請求,由Web服務器對數據庫進行操作,并將結果傳回客戶端。實質上就是C/S模式的變形和簡化,也就是三層C/S架構。用戶通過瀏覽器進入用戶界面,部分且少量的業務邏輯在瀏覽器端實現,主要的業務邏輯是在服務器端執行。這種模式統一了客戶端,將系統功能實現的核心部分集中到服務器部分,簡化了系統的開發、維護和使用。
人事信息發布系統作為系統的支撐平臺,主要是提供相關的數據庫服務,提高人事管理的效率,提高信息查詢的效率,確保數據的安全性、及時性、共享性,保證系統自身的安全性、交互性和擴展性,因此系統結構的設計是該高校人事信息發布系統的首要任務。
2.2 系統的開發工具和核心技術
通過對國內外高校人事信息發布系統的調查和研究,確立了需求分析,在B/S模式的基礎下,使用SpringBoot+MyBatis框架,MySQL作為系統數據庫,通過此來實現業務邏輯的管理,和對人事信息相關的部分進行統一集中的管理。
2.2.1 SpringB oot+MyB atis的項目整合
SpringBoot作為Pivotal團隊開發的全新框架,其設計目標是簡化Spring應用的初始搭建及開發過程煩瑣的配置,使開發人員不再需要定義樣板化的配置。開發人員通過這種方式可以快速開發與部署Java EE項目。同時,項目構建過程利用ma-ven管理項目所依賴的類庫,SpringBoot和MyBatis的整合雙兼顧兩者優點,利于整個系統的開發、管理以及可擴展性。
本文基于SpringBoot+MyBatis整合開發實現了高校人事信息發布系統,利用maven管理項目依賴的類庫。構建項目的基本過程首先需要在pom.xml文件中引入spring-boot-start-parent和spring-boot-starter-web依賴,并設計一個啟動類。之后將MyBatis、MySQL等依賴整合在pom.xml文件,最后,配置項目的application.properties文件。
2.2.2 數據庫連接池
本文介紹的系統采用數據庫連接池技術管理程序與數據庫的連接。系統選用阿里的Durid數據庫連接池技術,Durid不僅僅是一個數據庫連接池,也是一個JDBC的組件,可以通過StatFilter插件來監控數據庫訪問性能,數據庫加密等很多優點。
因此使用Druid組件,需要在maven中的pom.xml文件中添加pom依賴,然后配置application.properties文件,添加配置信息,之后可以根據需要配置WebFilter、WebServlet,掃描Servlet,初始化DataSource。部分核心代碼為:
com.alibaba<,groupld>
druid
1.7.25
spring. datasource. url=j dbc: mysql://localhost: 3306/rsc ?useSSL=true
spring.datasource.username=root
spring.datasource.password=mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring. datasource. type=com. alibaba. druid. pool. DruidData-Source
2.3 系統數據庫設計
數據庫設計分為以下五個步驟:需求分析階段、概念結構設計階段、邏輯結構設計階段、物理設計階段和數據庫實施階段,經過這些步驟分別得到數據字典、用E-R圖表示的概念模型(即實體一聯系圖)、概念模型轉換為MySQL所支持的數據模型、數據模型所適合的物理結構以及用MySQL所提供的數據語言和宿主語言J2EE進行建庫、編制和運行。
高校人事信息發布系統總共包括六個表:用戶表、優秀教師表、人才表、公告表、文件表和目錄表,E-R圖如圖1所示。
3 系統業務的設計與實現
3.1 人事系統管理模塊的實現
高校人事信息發布系統分為兩類角色:普通用戶和管理員用戶。普通用戶只具有查詢和瀏覽信息的功能,而各類信息的管理與發布由管理員用戶來實現。
管理員用戶所具有的職責為:新聞管理、人才管理、分類管理、下載管理、用戶管理。
1)新聞管理。發布與管理人事方面的新聞與公告,由于系統前端采用LayUI框架,該框架內置了富文本編輯器,具有在線編輯、樣式管理、圖片管理等功能。
2)人才管理。該模塊主要展示高校優秀人才信息。本系統支持多級用戶編輯與審核人才信息,從而保證了數據信息正確、規范和及時性。
3)分類管理。該模塊為系統多級管理機制與可擴展性,便于歸類不同的信息。
4)下載管理。該模塊提供了人事信息相關文件統一下載管理,分時分類,可以隨時添加與刪除。同時,不同類型角色提供了不同權限管理與下載文件。
5)用戶管理。該模塊主要是用戶基本信息與權限管理,提供了自定義用戶角色與訪問控制,具有較高的靈活性和安全性。項目功能結構如圖2所示。
3.2 主要功能實現
本文以信息發布模塊為例介紹系統的功能實現。信息發布模塊包括了系統賬號綁定、信息管理和信息發布三個二級模塊。
3.2.1系統賬號綁定
管理員登錄系統后臺以后點擊信息發布模塊,再點擊“系統賬號綁定”將自己的賬號綁定到發布模塊,綁定成功后,會調用相關的API獲取該信息,轉化成本地數據庫記錄存儲,并且在頁面上顯示系統賬號的描述、綁定狀態、關聯用戶等。對應的部分代碼如下:
@Controller
public class UserController{
@Autowired
private UserService userService;
@GetMapping(”/users”)
public String list(Model model)(
List userList= userService.getAIIUser0;
model.addAttribute(" userList " , userList);
return "user/list";}
@GetMapping("/user")
public String toAddUser0 {
return "user/add";}
@PostMapping("/user")
public String addUser(User user, Model model) {
user.setUstatus("在線 ");
int result = userService.addUser(user);
return "redirect:/users";}
3.2.2 信息發布
該功能包括新聞管理、人才管理,下載管理各類相關信息。文件下載的核心代碼如下 :
public static String downloadFileUpload(MultipartFile multi-partFile, String path) throws
IOException {
String fileName = uploadTool(multipartFile, path);
return fileTargetPrefix + fileName;}
public static StringD fileListUpload(MultipartFile[] fileList,String storeFilePath, String nid) throws IOException {
List nameList = new ArrayList0;
for (MultipartFile appendix : fileList) {
String filename = uploadTool(appendix, storeFilePath);
nameList. add(fileListTargetPrefix + nid + "/" + file-name);}
String[] fileNameList = new String[6];
for (int i = 0; i < fileList.length; i++) {
fileNameList[i] = nameList.get(i); }
return fileNameList;}
public static List getFilePathAndName(List filePathList) {
List fileList = new ArrayList<> 0;
for (int i = 0; i < filePathList.size0; i ++) {
String filePath = filePathList.get(i);
FilePathAndName filePathAndName = new FilePathAnd-Name0;
filePathAndName.setFilePath(filePath) ;
String tempName = filePath.trim0;
String filename = filePath. substring(tempName. lastln-dexOf(”/”)+1);
filePathAndName.setFileName(filename);
filePathAndName.setFilelndex(i);
fileList.add(filePathAndName);】
return fileList;1
3.3 系統安全設計
人事信息涉及了高校人事檔案信息,對安全有很高的要求。因此,系統的安全性尤為關鍵。本文系統的安全性主要包含以下方面。
1)權限管理。信息系統使用基于角色的介入控制,將用戶與角色、角色與權限聯合起來,不同類型的用戶分配不同的權限即角色(角色是一組權限的集合),各類用戶各司其職,各自實現各自的業務邏輯,互不干涉,以達到用戶與介人權限之間的邏輯分離,從而使權限的管理更加便利。
2)數據加密。人事管理的基礎數據庫存儲了一些關鍵信息和敏感數據,因此數據庫的安全性異常重要。數據加密是保護數據庫中數據安全的較好方法。同時配置文件中也可能會含有敏感信息,所以還要加密配置文件。
4 結論
本文介紹了高校人事信息發布系統的主要業務邏輯、系統設計以及人事管理的主要工作流程,通過該系統可以更加有效地進行高校人事管理工作并確保數據的完整性、及時性、準確性和共享性,在人機交互管理的基礎上實現人事管理與服務的提升。
參考文獻:
[1]冷輝,劉曉峰.基于.NET平臺的高校人事管理系統設計[Jl.合肥工業大學學報(自然科學版),2011,34(12):1889-1893.
[2]熊麗婷,陳政,何城波.基于云計算的人事管理系統設計與實現[J].軟件工程,2017,20(12):29-31.
[3]胡泳霞.基于J2EE架構的人事管理系統模塊的設計與實現[Jl.知識經濟,2016(18):76-77.
[4]呂睿光.高校人事管理系統的設計與實現[D]。長春:吉林大學,2013.
[5]楊鵬,徐建.基于J2EE的高校人事管理系統的設計與實現[Jl-電子設計工程,2018,26(17):54-56,61.
[6]郭海智,馮玉松.基于Spring+SpringMV C+Mybatis的業余足球俱樂部管理系統[J].電腦知識與技術,2019,15(9):71-72,76.
【通聯編輯:唐一東】