殷鳳梅,劉冠中
(合肥師范學(xué)院 計(jì)算機(jī)學(xué)院,合肥 230601)
隨著時代的發(fā)展,不同行業(yè)的不同企業(yè)數(shù)量急劇增加,急需要招聘各種人才。另一方面,隨著高校不斷擴(kuò)招,每年畢業(yè)求職的學(xué)生數(shù)量也不斷增長[1]。在這種情況下,傳統(tǒng)的招聘方式很難滿足市場的需求,急需更好的方式來提高招聘效率[2]。
求職者可以通過網(wǎng)上招聘系統(tǒng)不受時間和地域的限制,去應(yīng)聘更多的職位,免去了傳統(tǒng)招聘的奔波勞累,同時也可以更全方位地對招聘信息進(jìn)行篩選,從而找到心儀的崗位。招聘企業(yè)也可以吸引到更多的應(yīng)聘者,節(jié)省舉辦各種招聘會的成本[3]。
本招聘系統(tǒng)按照軟件工程中的瀑布模型規(guī)定各項(xiàng)開發(fā)工作的步驟,系統(tǒng)整體遵循MVC模式,采用Bootsrtap框架與jQuery庫搭建前端的交互頁面,SSM框架開發(fā)后臺功能, MySQL數(shù)據(jù)庫存放相關(guān)數(shù)據(jù)。
SSM框架是Spring、Spring MVC、Mybatis 3個框架的整合[4],許多企業(yè)的門戶網(wǎng)站、政府網(wǎng)站都是基于這個框架開發(fā)的。它將整個系統(tǒng)劃分為View層、Controller層、Service層和DAO層, 使用Spring MVC負(fù)責(zé)請求的轉(zhuǎn)發(fā)和視圖管理,Spring實(shí)現(xiàn)業(yè)務(wù)對象管理,Mybatis作為數(shù)據(jù)對象的持久化引擎[5-6]。
Bootstrap是一個基于HTML、CSS、JavaScript的用于快速開發(fā)Web 應(yīng)用程序和網(wǎng)站的前端框架[7]。它包含了許多功能強(qiáng)大的內(nèi)置組件,易于定制,還提供了基于Web的定制。它包含窗體、按鈕、字體排印、導(dǎo)航及其他各種組件和JavaScript插件,便于開發(fā)動態(tài)的網(wǎng)頁和各種Web應(yīng)用。
MySQL是一款關(guān)系型數(shù)據(jù)庫,現(xiàn)屬于甲骨文(Oracle)公司。MySQL中提供了很多種數(shù)據(jù)庫存儲的引擎,每種引擎都有其特點(diǎn),以適應(yīng)不同的需要,使用者可選擇合適的引擎從而得到最優(yōu)的性能。而且MySQL可在多個平臺上運(yùn)行,比如Windows、Linux等,這使得MySQL具有支持跨平臺的特點(diǎn)[8]。
網(wǎng)上招聘系統(tǒng)的整體架構(gòu)可分為5層,分別為View層、Controller層、Service層、DAO層和Domain Object層,如圖1所示。
圖1 系統(tǒng)整體架構(gòu)圖
其中,View層負(fù)責(zé)顯示前臺的JSP頁面,以及接收用戶發(fā)來的請求并顯示相應(yīng)的處理結(jié)果。Controller層用來對接用戶的訪問請求,調(diào)用Service層接口處理請求,并將處理結(jié)果發(fā)送給表現(xiàn)層[9]。Service層也稱業(yè)務(wù)層,由多個業(yè)務(wù)邏輯對象組成,它只負(fù)責(zé)邏輯上業(yè)務(wù)的處理,而不考慮具體的實(shí)現(xiàn)。DAO(Data Access Object)層,即數(shù)據(jù)訪問層,在SSM框架內(nèi)又叫Mapper層,它主要負(fù)責(zé)與系統(tǒng)數(shù)據(jù)庫進(jìn)行交互,完成一些增刪改查操作[10]。Domain Object層是由一系列的普通Java對象組成,這些對象就是存放系統(tǒng)的實(shí)體類,在訪問數(shù)據(jù)庫之前,需要先編寫好在應(yīng)用層承載數(shù)據(jù)的領(lǐng)域?qū)ο蟆?/p>
本招聘系統(tǒng)面向3類用戶,分別為個人用戶、企業(yè)用戶、管理員。
針對個人用戶,系統(tǒng)需要具備登錄、注冊、招聘首頁、瀏覽和篩選招聘信息、申請或收藏意向職位、維護(hù)個人信息、查看企業(yè)的回復(fù)消息等功能模塊,如圖2所示。
圖2 個人用戶視角的功能模塊圖
針對企業(yè)用戶,系統(tǒng)需要具備登錄、注冊、求職者管理、發(fā)布招聘信息、管理招聘信息、企業(yè)信息維護(hù)等功能模塊,如圖3所示。
圖3 企業(yè)用戶視角的功能模塊圖
針對管理員,系統(tǒng)需要具備登錄、審核企業(yè)資質(zhì)、招聘信息審核和管理等功能模塊,如圖4所示。
圖4 管理員視角的功能模塊圖
數(shù)據(jù)庫是系統(tǒng)成功運(yùn)行的基本,所以數(shù)據(jù)庫設(shè)計(jì)尤為重要,根據(jù)系統(tǒng)各功能模塊之間的聯(lián)系,設(shè)計(jì)的目標(biāo)能夠反映出各項(xiàng)功能中實(shí)體之間存在的聯(lián)系。
企業(yè)用戶實(shí)體的主要屬性有:賬號、密碼、企業(yè)名稱、聯(lián)系電話等。招聘信息實(shí)體的主要屬性有:招聘標(biāo)題、職位描述、職位類型、招聘人數(shù)等。企業(yè)可以發(fā)布招聘信息,所以企業(yè)與招聘信息之間的關(guān)系是發(fā)布。企業(yè)用戶實(shí)體與招聘信息實(shí)體的E-R圖如圖5所示。
圖5 企業(yè)與招聘信息E-R
在開發(fā)整個項(xiàng)目之前,要先創(chuàng)建和連接系統(tǒng)所需的數(shù)據(jù)庫。此系統(tǒng)所使用的是MySQL數(shù)據(jù)庫,并且是基于SSM框架進(jìn)行開發(fā)的。因此,可由MyBatis框架來完成對數(shù)據(jù)庫的操作,數(shù)據(jù)庫的連接可以直接在相關(guān)配置文件和資源文件中配置好。
資源文件db.properties的配置如圖6所示,數(shù)據(jù)庫連接的相關(guān)配置如圖7所示,springmvc.xml是有關(guān)SpringMVC框架的配置文件,如圖8所示。
圖6 資源文件配置
圖7 數(shù)據(jù)庫連接配置
圖8 springmvc.xml配置
在登陸時,用戶需先選擇自己所屬的角色,再依次填寫正確的個人賬戶、密碼,以及驗(yàn)證碼,然后點(diǎn)擊登錄按鈕,系統(tǒng)便會驗(yàn)證所填信息是否正確。若所填寫信息正確,頁面將跳轉(zhuǎn)到相應(yīng)用戶類型的頁面;若不正確,則會提醒賬號或者密碼錯誤,需重新登錄。用戶登錄的主要代碼如下:
success:function (result){
if (result.success){
if(result.message==3){ window.location.href="/backstage/company/jsp/companyList.jsp?i=6";}
else if(result.message==2){
if(result.data.is_check!=2){
alert("您的賬號暫未通過!");}
else{window.location.href="/backstage/hunter/jsp/hunter.jsp?i=1";}
}
else{window.location.href="/foreground/index/jsp/new_index.jsp?i=0";}
console.log(result);
}
else { alert("賬號或密碼錯誤!"); }
}
系統(tǒng)首頁的上方是一個菜單區(qū)域,左側(cè)則是不同行業(yè)的選擇區(qū)域,方便用戶篩選想尋找的崗位信息,菜單區(qū)域的下方則是一個輪播圖區(qū)域,展現(xiàn)網(wǎng)站主題,頁面的最下方展示了一些招聘信息,并設(shè)置了一個“查看更多”鏈接,可快速跳轉(zhuǎn)到招聘大廳模塊中。
企業(yè)用戶在此模塊中填寫想要發(fā)布的招聘信息,包括招聘標(biāo)題、所屬行業(yè)、職位類型、所在地區(qū)、薪水、招聘人數(shù)、職位的詳細(xì)描述等。其中,崗位的所屬行業(yè)與類型,須在下拉框中選擇,不能隨意填寫。發(fā)布招聘信息的界面如圖9所示。
圖9 發(fā)布招聘信息頁面
為了確保平臺上的個人用戶不被虛假信息所欺騙,平臺上發(fā)布的每一條招聘信息都需管理員核查,只有審核通過才能在招聘大廳中檢索到相應(yīng)的崗位信息。除此之外,管理員對所有已發(fā)布的職位信息有絕對權(quán)限,可隨時對其進(jìn)行刪改,以保證信息的可靠性。招聘信息的審核與管理如圖10所示。
圖10 招聘信息審核與管理
本系統(tǒng)測試要求如下:
硬件環(huán)境:CPU型號(AMD Ryzen 5 4600U)、內(nèi)存容量(16G)、硬盤容量(500G)。
軟件環(huán)境:Microsoft Windows 10操作系統(tǒng)。
此次測試主要是測試求職者管理模塊,測試要點(diǎn)為查看求職者信息、簡歷下載、通知求職者。求職者管理模塊的測試用例如表1所示。
表1 求職者管理模塊測試用例
對網(wǎng)上招聘系統(tǒng)開發(fā)的架構(gòu)與框架進(jìn)行了簡單闡述,通過功能模塊的劃分與設(shè)計(jì),開發(fā)實(shí)現(xiàn)了一個簡單的網(wǎng)上招聘平臺。實(shí)現(xiàn)了用戶登錄、發(fā)布招聘信息、篩選招聘信息、收藏和申請相關(guān)職位等功能,初步滿足使用需求。未來該系統(tǒng)還需進(jìn)一步完善,增加企業(yè)營業(yè)執(zhí)照驗(yàn)證、在線視頻面試等功能,以推向?qū)嶋H應(yīng)用。