李孟津 楊 丹
(常州信息職業技術學院軟件與大數據學院,江蘇 常州213164)
在線招聘網站的主要功能是用戶來進行找工作,它的基本流程是查找職位→制作簡歷→投遞簡歷,用戶使用通過在網站界面注冊獲取用戶賬號及密碼,即可使用相關功能,此外還可根據用戶的喜好推測出用戶可能喜歡的東西,優先展出。
該在線招聘系統采用了SpringBoot 框架開發技術,可以更加便捷的編寫代碼、配置、部署和監控系統,整個招聘系統的開發設計結構層次更加的清晰明了。使用Web 開發框架成功實現了組件再用,也使得整個系統的性能得到了極大的優化,同時系統應用Flexigrid 控件技術一定程度上的縮減了程序代碼,同時也降低了錯誤問題出現的概率;使用log4j 日志追蹤,可以有效地對代碼進行追蹤,監控代碼運行過程,主要的就是這帶給程序員很多的好處,減少一些多余的麻煩,方便對系統進行維護管理。
SpringBoot 實現了自動配置,降低了項目搭建的復雜度。非常適合完成基于B/ S 的信息系統開發,具備如下優點:
(1)SpringBoot 是一些庫的集合,可被任何一項目所使用。創建獨立的Spring 應用程序,且基于其Maven 插件,創建可執行的JARs 和WARs;
(2)內嵌Tomcat 等Servlet 容器;
(3)提供自動配置的"starter"項目對象模型(POMS)以簡化Maven 配置;
(4)盡可能自動配置Spring 容器;
(5)提供準備好的特性,如指標、健康檢查和外部化配置,提供有命令行界面,用來運行和測試;
(6)絕對沒有代碼生成,不需要XML 配置。
前端采用vue 前端技術實現雙向數據綁定,有利于后期維護和升級。Vue.js 是一個輕量級的漸進式框架,它的核心庫只關注視圖層,學習起來非常的容易方便,還很容易與其它的庫或者是已經存在的項目進行整合。
提供簡單的API 來實現很多功能。用于構建用戶界面,可以自底向上逐層應用的漸進式前端框架。相比于其他主流的框架,其具有運行效率高、語言簡潔、占用空間小、上手容易等特點。
通過對在線招聘網站的需求調研,得到所需要的功能需求,說明如下:
在線招聘網站主要的功能模塊為:應聘方模塊、招聘方模塊和管理員模塊。
注冊登錄:提供用戶的登錄和注冊功能。普通用戶在登錄的時候需要進行檢測并校驗系統數據庫中是否已存在注冊用戶的有關信息,有則可以登錄系統,反之則需要注冊用戶信息然后再登錄,成功進入系統后可以進行的操作主要有查找工作職位操作和投遞簡歷以及個人簡歷的修改,個人信息的更改并且還進行與內部動態與行業鏈接的維護與更新,若數據庫里沒有信息,則需用戶注冊。
完善簡歷:應聘者能夠按照不同的招聘信息來進行簡歷填寫。
職位查找:系統提供搜索職位功能,基于用戶和基于項目協同過濾推薦算法推薦職位。
投遞簡歷:系統提供投遞簡歷功能,用戶可自行選擇心儀的招聘公司投遞自己的信息。
修改簡歷:能夠隨時對自己所填寫的簡歷進行修改。
查看簡歷:可以查看應聘方投遞的簡歷。
需求發布:發布本單位的需求信息。
修改發布:對已發布的需求進行修改。
公告管理:編輯、修改、發布公告信息。
審核模塊:審核招聘方和應聘方的注冊。
系統設計技術采用SpringBoot+MyBatis+Mysql 整合,靈活易上手,編寫好可以在很多環境下運行,方便存取數據庫,保護數據等等。該框架將整個系統分為表現層、業務層、數據持久層。分層結構將用戶界面、業務邏輯和數據進行了分離,以靈活、快速地響應業務需求的變化,幫助開發者快速啟動一個Web 容器,簡化了使用Spring 的過程。
各層實現功能說明:
View 層是與用戶的交互層,通過瀏覽器,負責獲取用戶有關的訪問請求和信息,并遞交請求和數據,服務器接收這個請求,調用合適的組件,后臺的響應數據,顯示相關的頁面并返回給客戶層。與此同時也給客戶提供了javascript 的驗證。
Control 層負責項目中業務功能實現流程的管理。業務邏輯層實現并提供了系統所需的業務邏輯方法。
Model 層主要是一些實現具體業務功能的類,Mybatis 為業務邏輯層數據存取的方法。
如圖1 所示。
SpringMVC 框架中業務流程為:

圖1 基于SpringBoot 與vue 的整合框架
表示層是用戶與系統直接進行交互的界面。負責收集用戶請求并返回處理結果頁面。
業務層是由業務邏輯對象組成,是系統的核心。實現并提供了系統所需要的業務邏輯方法。
持久層由數據訪問對象(Data Access Objects)組成,這些數據訪問對象提供對領域(Domain Object)基本的創建、查詢、修改和刪除等操作。本系統有Mybatis 實現數據持久層,為業務邏輯層數據存取的方法,實現數據庫數據的增、刪、改、查操作。
本文以求職模塊為例說明系統的實現過程。該模塊的功能是用戶選擇職位,完善簡歷進行簡歷投遞。
求職功能通過用戶選擇職位點擊后提交給SpringMVC 的PositionController 處理,處理結束后重新刷新文件列表。
SpringMVC 的表現層如下:

求職的業務層處理求職過程的業務邏輯,作為中間層起到一個連接表現層與持久層的作用,向上接收職位名稱,向下可以接收和傳遞持久層的數據。通過業務層將表示層與數據處理分離開來,可以降低系統的耦合度。在本系統中主要利用Spring框架構建業務層,通過使用注解的方式調用。

權限管理持久化實現通過PositionServiceImpl 類實現,實現代碼如下。

基于SpringBoot 架構設計開發的在線招聘網站系統通過實際試運行,表現良好。SpringBoot 框架通過vue 實現網頁與用戶交互,通過SpringMVC 負責在表示層中處理頁面的請求和轉發工作;通過Spring 容器管理機制負責在業務層處理業務邏輯工作;通過Mybatis 完成在持久層與數據庫的交互工作。這樣形成一個結構良好、功能強大、層次清晰的框架體系。SpringBoot 框架能簡化系統的開發,可以有效的降低各層之間的耦合度,提高系統的可維護性。