嚴春時 黃砷才 藍偉杰 李國武 鄧禮銘
【摘 要】基于JavaWeb技術開發(fā)了中職招生系統(tǒng),首先根據(jù)桂林市林業(yè)學校的現(xiàn)狀及提出的需求設計了系統(tǒng)的功能流程,然后詳細介紹了招生系統(tǒng)的主要功能的設計及實現(xiàn)。最后介紹了關鍵技術發(fā)送手機短信及郵件的實現(xiàn)。系統(tǒng)以Myeclipse為開發(fā)平臺,以Spring-SpirngMVC-Mybatis(SSM)框架為核心,結合MySQL數(shù)據(jù)庫完成了招生系統(tǒng)的數(shù)據(jù)庫設計和實現(xiàn)。
【關鍵詞】JavaWeb;中職招生;Spring
中圖分類號: TP311.52 文獻標識碼: A 文章編號: 2095-2457(2018)17-0062-002
DOI:10.19694/j.cnki.issn2095-2457.2018.17.030
【Abstract】Based on the JavaWeb technology,the enrollment system for secondary vocational schools was developed.Firstly,the functional flow of the system was designed according to the status quo of the forestry schools in Guilin and the requirements proposed.Then the design and implementation of the main functions of the enrollment system were introduced in detail.Finally, the realization of key technologies for sending SMS and emails was introduced. The system takes the Myeclipse as the development platform and takes the Spring-SpirngMVC-Mybatis (SSM) framework as the core, and combines the MySQL database to complete the design and implementation of the database of the enrollment system.
【Key words】JavaWeb;Secondary Vocational Admissions;Spring
0 前言
雖然在國家的支持下,職業(yè)學校在快速發(fā)展,逐步完善了屬于職業(yè)教育特有的教學機制。但桂林市林業(yè)學校在招生工作中,仍然使用傳統(tǒng)的人工招生管理模式。此外,目前林業(yè)學校在招生工作中所涉及到的數(shù)據(jù)量變大,其中包括學生報名信息、學生家庭信息、學校的政策公告、招生人員管理等。各種招生信息交流日漸頻繁,并且要求可以隨時提供給有關部門進行分析、處理和決策之用的各種信息統(tǒng)計準確、全面。但是所有這些工作都是相當繁重的,用林業(yè)學校傳統(tǒng)的統(tǒng)一錄入信息的方式管理,顯而易見的是處理手段落后,反應時間長,并且信息處理的工作量大,其中的重復勞動多,這就導致工作效率低下,滿足不了教育管理部門或領導決策的需要,降低了招生管理的效果和作用。本文基于JavaWeb為桂林林業(yè)學校開發(fā)了一個線上的招生系統(tǒng)。
1 需求描述
系統(tǒng)設計到的角色包括學生、招生人員和系統(tǒng)管理員,對系統(tǒng)的一些具體需求包括:
(1)學生具有的功能是查看學校的招生信息、公告、政策、學校宣傳等信息,填寫個人信息,申請報名以及查看報名進度。
(2)學生每次登錄系統(tǒng),主頁面要反饋一條信息(由招生人員填寫,可設置為表字段),提示其處于哪種狀態(tài),并設置學生為該狀態(tài)(狀態(tài)分為“尚未提交報名信息”、“已提交報名信息報名但尚未被審核錄取”、“報名但不被錄取”、“已被錄取”四種狀態(tài)。
(3)招生人員則需要能夠在招生系統(tǒng)上查看學生報名信息,確認學生是否通過招生審核,發(fā)布學校公告、政策,維護學校各個專業(yè)信息。
(4)管理員角色在招生人員具有的功能基礎上,可以添加招生人員賬號,對賬號進行禁用和重置密碼,還需要具備數(shù)據(jù)庫備份恢復功能以及查看和管理所有用戶的操作日志。
2 系統(tǒng)功能設計與實現(xiàn)
根據(jù)對林業(yè)學校招生流程以及提出的系統(tǒng)角色和角色具有的功能進行總體分析,與林業(yè)學校定義系統(tǒng)具有的模塊分別是:學生報名、招生管理、專業(yè)管理、公告政策管理、個人信息管理、系統(tǒng)管理、注冊登錄。
2.1 學生報名模塊
在中職招生系統(tǒng)中,學生報名模塊是本系統(tǒng)最重要的模塊之一,針對的角色是學生,對招生人員與管理員是不可見。主要實現(xiàn)的功能以及方法如下:
(1)填寫報名信息:public R save(@RequestBody StuInfoEntity stuInfoEntity)學生在填寫報名信息后,可以直接提交報名,或先保存信息,暫不提交,以便下次繼續(xù)完善。
(2)提交報名:public R enroll()把填寫好的信息提交給系統(tǒng),并進行保存,等待審核。
(3)修改報名信息:public R update(@RequestBody StuInfoEntity stuInfoEntity)自動獲取上一次保存的個人信息,可重新編輯,若已經(jīng)提交申請,則不能再重新修改。
(4)查看報名信息:public R info(Long id)可查看最后保存或提交的個人信息。
(5)查看報名進度:public R select()(Long id)根據(jù)進程顯示當前學生的報名進度。
2.2 招生管理模塊
該模塊對學生角色用戶不可見,主要實現(xiàn)功能如下:
(1)查詢:public R list(@RequestParam Map
(2)審核:public R pass(@RequestBody SysUserEntity sysUserEntity)根據(jù)招生信息及學生所填報名信息,確認學生是否通過審核并錄取,審核時,可選擇性是否填寫反饋信息(不通過錄取的原因)給學生。
(3)打?。簆ublic String word(HttpServletRequest request, HttpServletResponse response)
把單個學生的報名信息生成word文檔,以便打印。
(4)導出:public R export(HttpServletResponse response)把所有學生報名信息導出成Excel表格。
2.3 系統(tǒng)管理模塊
(1)用戶管理:public R save(@RequestBody SysUserEntity user)對系統(tǒng)的所有用戶進行查詢、新增系統(tǒng)用戶、修改用戶的用戶名、密碼、郵箱、手機號、對應角色以及用戶狀態(tài)以及刪除作廢的用戶。
(2)角色管理:public R list(@RequestParam Map
(3)菜單管理:public List
(4)系統(tǒng)日志:public R list(@RequestParam Map
(5)數(shù)據(jù)庫備份public R backup(String fileName, HttpServletRequest request)
(6)數(shù)據(jù)庫還原public R restore(@RequestParam MultipartFile file, HttpServletRequest request)
3 關鍵技術實現(xiàn)
3.1 手機驗證碼重置密碼
本系統(tǒng)使用的是UCPASS短信發(fā)送平臺。需要在該平臺進行注冊,購買相應的套餐后,把平臺提供的SDK下載到本地,放入程序中,然后創(chuàng)建java文件UcpaasSender設置好身份驗證的參數(shù)后調用平臺接口,即可把編輯好的短信內容發(fā)送出去。
短信重置密碼時,需要先輸入手機號獲取驗證碼。在resetPassword.jsp頁面輸入手機號,點擊獲取密碼后,jsp頁面引用的resetPassword.js文件調用后臺控制器文件SysUserController.java文件中的sendCode方法并傳輸參數(shù)phone,在sendCode方法中,使用randomNum()隨機生成一串數(shù)字作為驗證碼,然后把手機號、生成的驗證碼作為參數(shù)調用UcpaasSender.java文件中的send()方法,在send()方法中執(zhí)行UcpaasSDK.sendSms()給用戶發(fā)送驗證碼。
中職招生系統(tǒng)選擇的發(fā)件郵箱為QQ郵箱。在開發(fā)時,使用JavaMail實現(xiàn)郵箱重置密碼,與使用手機驗證碼不同,不需要使用平臺與運營商,僅需要把mail.jar和JavaBeans Activation Framework導入程序中調用java自帶的郵箱接口,不需要有任何開支。
3.2 郵箱重置密碼
在這里使用QQ郵箱,需要在郵箱設置中開啟SMTP服務獲取調用郵箱服務的授權碼,獲取到的授權碼為:vaqkhxrprscqbgih。
用郵箱重置密碼時,jsp頁面把輸入的郵箱和用戶名作為參數(shù)傳輸?shù)胶笈_SysUserController.java控制器中的resetPassword()方法中,先判斷該用戶是否存在,以及輸入的郵箱是否為預留的電子郵箱。做完判斷后,創(chuàng)建郵件的發(fā)送內容,然后調用控制器中的sendEmail()方法,把郵件內容和電子郵箱作為參數(shù)傳輸。在sendEmail()中使用Properties類,設置郵件的發(fā)送方為QQ郵箱,使用的是SMTP服務,接著設置發(fā)送的協(xié)議為STMP,最后進行身份驗證。開啟session的debug模式,用于查看程序發(fā)送Email的運行狀態(tài),然后使用郵箱的用戶名和密碼連接上發(fā)送郵箱的服務器,該賬號是發(fā)送郵件的發(fā)送方,在這里使用的QQ郵箱服務器端口號為587。連接上服務器后,開始創(chuàng)建郵件,createSimpleMail(session,email,sendMsg),最后通過調用transport的方法sendMessae()發(fā)送郵件。
4 結束語
此次開發(fā)的招生系統(tǒng)為桂林林業(yè)學校招生系統(tǒng)的首個版本,能夠在林業(yè)學校的招生管理方面起到很好的信息化管理作用,推進林業(yè)學校招生的信息化發(fā)展。但對于一些工作細節(jié)的處理可能不夠到位,另外,當招生流程變得更復雜時,可能需要在現(xiàn)有的版本基礎上進行進一步開發(fā),而如何使得二次開發(fā)的改動達到最小化是今后的方向。
【參考文獻】
[1]黃勇.架構探險-從零開始寫Java Web框架[M].北京: 電子工業(yè)出版社,2015,.
[2](美)Craig Walls著.Spring.張衛(wèi)濱譯.北京: 人民郵電出版社,2016.
[3]袁梅宇,張智斌,何佳.JavaEE編程開發(fā)案例精講[M].北京: 清華大學出版社,2015.