張雨雨+李嘉明+汪鑫飛+賴長權(quán)+鄒超
摘要:畢業(yè)生求職過程中,通常需要使用簡歷去傳遞自己的信息以便獲得企業(yè)人力資源經(jīng)理的青睞,而制作一份精美的個人簡歷并非易事,此時求職者的需求就是自動生成簡歷。基于Web的簡歷自動生成系統(tǒng)可以通過將xml(可擴展標記語言)文件導(dǎo)入求職者的個人信息數(shù)據(jù)最后轉(zhuǎn)換成word文件簡歷,省去求職者重復(fù)制作簡歷的過程。求職者只需要填寫一次信息,就可以選擇系統(tǒng)提供的多種模板生成多份簡歷,最終求職者可以選擇使用最適合自己的簡歷進行求職。
關(guān)鍵詞:簡歷;自動生成系統(tǒng);模板
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)34-0089-04
Abstract: Graduate job search process, often need to use the resume to pass their information in order to get the favour of enterprise human resources manager, and make a wonderful resume will not be easy, the demand of the job seekers is generated automatically resume at this time. Resume automatic generation system Based on Web by XML (extensible markup language) file imports a candidate's personal information data resume finally converted into word file, save the process of job hunters who repeatedly making a resume. Applicants only need to fill in an information, you can choose the system to provide a variety of templates to generate more resumes and final candidates can choose to use the most suitable for your resume for seeking a job.
Key words: resume; Automatic generation system; Template
當今社會的人們在學(xué)習(xí)、工作和生活中總是要與社會上的其他人、社會群體和社會組織發(fā)生一定的聯(lián)系。在彼此的溝通、交往過程中,必然要將自己的信息或多或少地傳遞給社會其他成員或組織,簡歷就是一個比較好的選擇去傳遞自己的信息。每年國內(nèi)外大學(xué)畢業(yè)生求職時用得最多的傳遞信息的工具就是簡歷,因此簡歷就像是一塊敲門磚,幫助你打開你心儀的企業(yè)單位的大門。簡歷是求職者全面而簡潔地介紹自身情況的一種書面表達方式,求職過程中撰寫的簡歷是求職者向招聘單位全面、簡潔、條理清晰地自我介紹、自我推薦的文書。在求職者應(yīng)聘過程中,精美簡歷的制作的重要程度不亞于求職者參加招聘單位筆試面試。通過短短數(shù)百字的個人簡歷,求職者不但要能較充分地展現(xiàn)出自己的才能及綜合素質(zhì), 而且要使企業(yè)人力資源經(jīng)理感到自己是一位思維清晰、條理性強、語言表達能力突出的應(yīng)聘者。因此,制作一份精美的簡歷就是求職成功的第一步,制作精美的簡歷就成了每個求職者的必須掌握的一項技能,但是不是每個求職者都擅長制作精美的簡歷,因此各種簡歷模板提供系統(tǒng)以及各種簡歷生成系統(tǒng)應(yīng)運而生,滿足了廣大求職者的簡歷制作需求[1]。
國內(nèi)外大部分簡歷生成系統(tǒng)都是提供精美的簡歷模板給用戶選擇下載,用戶花費一定的積分就可以下載簡歷模板,用戶下載簡歷模板之后,還需要將自己的信息填入簡歷模板,此時用戶的簡歷才算是制作完成。這些系統(tǒng)并沒有實現(xiàn)自動生成簡歷這項功能,只是提供簡歷模板給用戶選擇下載,只是選擇簡歷模板并不算是自動生成簡歷,因為用戶還需要使用一定時間去填寫信息和完善細節(jié)。目前的簡歷生成系統(tǒng)局限于制作各種精美的簡歷模板,并沒有滿足用戶自動生成簡歷的需求。求職者不想浪費時間在簡歷制作之上,他們更想拿出更多的時間去應(yīng)對招聘單位的面試與筆試,自動生成簡歷這項功能越來越受到用戶的期待,此時基于Web的簡歷自動生成系統(tǒng)就應(yīng)運而生。
1 系統(tǒng)分析及設(shè)計
1.1 系統(tǒng)分析
基于Web的簡歷自動生成系統(tǒng)的主要目的在于自動生成簡歷,系統(tǒng)主要需要實現(xiàn)自動生成簡歷的功能,即是用戶輸入信息選擇簡歷模板自動生成簡歷。用戶輸入的基本信息一般不會改變,如性別民族籍貫等,系統(tǒng)可以通過多選框的形式來獲取用戶的基本信息,用戶輸入的其他信息多變,如工作經(jīng)歷獲獎經(jīng)歷等,此時系統(tǒng)就需要用戶自己填寫輸入。用戶完善個人信息之后,就可以選擇各種模板隨意生成簡歷,簡歷最終輸出為word文件,用戶可以選擇最適合自己的簡歷,最后用戶可以選擇保留自己的信息以便下次生成簡歷或者刪除自己的信息來保證個人信息安全?;赪eb的簡歷自動生成系統(tǒng)的核心業(yè)務(wù)是用戶只須填寫一次信息,即可隨心更換簡歷模板生成用戶個人簡歷。系統(tǒng)核心業(yè)務(wù)如圖1所示,從此可以看出系統(tǒng)的核心理念就是盡可能的方便用戶,幫助用戶節(jié)省時間和精力。
系統(tǒng)目的在于得到導(dǎo)入用戶信息數(shù)據(jù)后的word簡歷文件,問題在于核心算法的實現(xiàn),即是利用算法使得用戶信息數(shù)據(jù)導(dǎo)入空白word文件轉(zhuǎn)換成word簡歷文件,最終系統(tǒng)選擇使用xml(可擴展標記語言)來實現(xiàn)該算法,Word從2003開始支xml格式,將簡歷模板word文件另存為xml文件。xml利用不同的標簽設(shè)置了word文件的樣式設(shè)計以及顯示內(nèi)容,系統(tǒng)可以通過改變簡歷模板word文件的xml格式文件中標簽內(nèi)的數(shù)據(jù)來改變word文件的顯示內(nèi)容。系統(tǒng)將簡歷模板另存為xml文件,再將其設(shè)為ftl文件,利用模板引擎FreeMarker包中的方法解析ftl文件,將數(shù)據(jù)庫中的用戶信息數(shù)據(jù)導(dǎo)入該文件,生成word文件,此時的word文件就是包含數(shù)據(jù)的word文件,簡歷即這樣生成,這樣方式生成的word簡歷完全符合office標準,樣式、內(nèi)容控制非常便利,打印也不會變形,生成的簡歷和office中編輯簡歷完全一樣。
1.2 系統(tǒng)設(shè)計
系統(tǒng)采用MVC設(shè)計模式進行開發(fā),將系統(tǒng)劃分為模型層(model),視圖層(view)和控制層(controller)三層設(shè)計,這樣設(shè)計提高了系統(tǒng)的可伸縮性和可維護性[2]。
1.2.1 模型層(model)
模型層封裝了系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)和事務(wù)邏輯,集中體現(xiàn)應(yīng)用程序的狀態(tài),當數(shù)據(jù)狀態(tài)改變的時候,能夠在視圖里面體現(xiàn)出來。系統(tǒng)使用JavaBean實現(xiàn)該層設(shè)計,系統(tǒng)實現(xiàn)了對數(shù)據(jù)庫的訪問操作類DAO(Data Access Object)以及對數(shù)據(jù)表數(shù)據(jù)的封裝類VO(Value Object),通過對于DAO和VO的配合使用,實現(xiàn)系統(tǒng)層次的分開,降低系統(tǒng)耦合度[3]。系統(tǒng)將連接數(shù)據(jù)庫類作為基類,實現(xiàn)了打開連接數(shù)據(jù)庫和關(guān)閉數(shù)據(jù)庫連接的方法,將連接數(shù)據(jù)庫的關(guān)鍵變量設(shè)置為全局變量,其他連接數(shù)據(jù)庫的具體操作類繼承該基類。作為該基類的派生類,派生類可以獲取基類的變量和方法去進行數(shù)據(jù)庫的訪問操作,派生類只需要實現(xiàn)具體的對Oracle數(shù)據(jù)表進行增刪改查的方法即可。
1.2.2 視圖層(view)
視圖層是模型層的外在表現(xiàn),當模型層的狀態(tài)改變時,視圖層會有相應(yīng)的顯示。系統(tǒng)使用JSP(Java Server Pages)實現(xiàn)該層設(shè)計,系統(tǒng)設(shè)計了多個JSP頁面用于用戶輸入或響應(yīng)用戶,例如用戶登錄注冊完善信息等界面都是用戶輸入界面,采用表單(form)或者表格(table)的方式提交信息到服務(wù)器,而響應(yīng)用戶界面則是提供用戶進行操作后服務(wù)器返回的響應(yīng)界面,系統(tǒng)在響應(yīng)界面嵌入少量Java代碼,作為響應(yīng)界面的判斷設(shè)置,不同條件則獲取不同的url,然后通過JSP的內(nèi)置對象response跳轉(zhuǎn)到不同的響應(yīng)界面。
1.2.3 控制層(controller)
控制層對用戶的輸入進行響應(yīng),將模型和視圖聯(lián)系到一起,負責將數(shù)據(jù)寫的模型中,并調(diào)用視圖。系統(tǒng)使用Java Servlet實現(xiàn)該層設(shè)計,系統(tǒng)設(shè)計了多個響應(yīng)用戶提交信息的servlet,這些servlet調(diào)用DAO類對后臺數(shù)據(jù)庫進行增刪改查操作,然后又將返回的數(shù)據(jù)或者信息以響應(yīng)界面的形式調(diào)用JSP頁面顯示,Servlet獲取JSP頁面的請求,通過doGet和doPost方法分別處理doGet和doPost方式提交的請求JSP界面,返回響應(yīng)JSP界面給用戶。
系統(tǒng)大致是使用JSP+servlet+javaBean的MVC模式進行設(shè)計開發(fā),通過加上使用JavaScript腳本語言和Jquery幫助實現(xiàn)對于響應(yīng)界面的復(fù)雜設(shè)計和操作響應(yīng),而HTML或者JSP頁面布局和美化是通過使用div+css的布局模式[4]。
2 系統(tǒng)實現(xiàn)
首先需要用word編輯文檔的樣式即設(shè)計精美的簡歷模板,圖2中簡歷模板就是用于用戶生成簡歷的可選模板,將簡歷另存為xml格式文件,圖3所示就是該簡歷的xml格式文件,在獲得簡歷模板的xml格式文件之后,系統(tǒng)將需要導(dǎo)入數(shù)據(jù)的空白處用美元符號$和大括號{}做上標識,以便后面將用戶信息從數(shù)據(jù)庫中取出再通過標識導(dǎo)入到xml文件中。xml文件是由多個標簽組合構(gòu)成,例如
其次系統(tǒng)需要獲取用戶的信息并且保證用戶的信息不被泄露,則需要使用登錄注冊機制,并且將用戶密碼進行MD5加密再存放在數(shù)據(jù)表可以防止用戶密碼泄露,設(shè)置驗證碼驗證可以防止被多次測試破壞登錄系統(tǒng),系統(tǒng)的登錄注冊界面如下圖4、圖5所示。
系統(tǒng)還需要獲取用戶輸入的信息,用戶信息輸入界面如圖6、圖7所示,圖7所示是用戶的基本信息,一般也不會發(fā)生改變,圖8所示是用戶的工作等信息,可以選擇點擊添加按鈕進行添加輸入信息模塊,用戶可以選擇添加學(xué)生工作或者實習(xí)經(jīng)歷等模塊的完善個人信息,系統(tǒng)將獲取的信息插入用戶信息數(shù)據(jù)表中,設(shè)置用戶名作為主鍵和外部鍵以便進行數(shù)據(jù)表等值連接查詢[5]。
最后系統(tǒng)將用戶信息數(shù)據(jù)表中的值取出,利用映射Map實現(xiàn)關(guān)鍵詞和值的一一對應(yīng),取xml文件中的標識作為關(guān)鍵詞,在數(shù)據(jù)表中取出的對應(yīng)屬性作為數(shù)據(jù),將其一一對應(yīng)之后利用Map的put()方法將映射關(guān)系加入Map中,利用java引入Freemarker包的template類的process方法將存放在映射Map的數(shù)據(jù)導(dǎo)入到xml格式文件中,即可實現(xiàn)數(shù)據(jù)的轉(zhuǎn)移,然后用戶所選擇的簡歷文件存儲路徑下就會生成簡歷word文件,系統(tǒng)會將關(guān)于生成簡歷的信息插入到用戶簡歷表中,此時系統(tǒng)的一次生成簡歷操作完成,系統(tǒng)最終生成的簡歷如圖8所示。
3 系統(tǒng)特點
本系統(tǒng)是基于B/S模式下的web服務(wù)網(wǎng)站,以Apache Tomcat作為服務(wù)器,使用java開發(fā)集成工具MyEclipse開發(fā)的,以TCP/IP協(xié)議簇作為通信協(xié)議的網(wǎng)站系統(tǒng),它有以下優(yōu)點:
3.1 客戶端無需維護
所有數(shù)據(jù)操作都發(fā)生在服務(wù)器端的控制層, 客戶端只能通過瀏覽器界面操作或者接收響應(yīng)信息,系統(tǒng)的主要維護工作也集中在服務(wù)器控制層,業(yè)務(wù)邏輯的修改不會影響客戶端的運作,只是改變JSP或HTML界面的顯示。
3.2 系統(tǒng)適應(yīng)多平臺
由于 Java EE 的軟件平臺無關(guān)性和Java語言本身的平臺無關(guān)性, 應(yīng)用系統(tǒng)的業(yè)務(wù)邏輯可以方便地實現(xiàn)軟件平臺的遷移,因此本系統(tǒng)可以適應(yīng)大多數(shù)的平臺,減少了系統(tǒng)的運行成本。
3.3 系統(tǒng)可靠性強
通過應(yīng)用服務(wù)器的故障恢復(fù)技術(shù), 可大大提高系統(tǒng)容錯能力和系統(tǒng)的高可用性,使得本系統(tǒng)具有較強的可靠性[6]。
3.4 系統(tǒng)安全性強
系統(tǒng)采用MVC設(shè)計模式進行設(shè)計開發(fā),只允許服務(wù)器控制層調(diào)用模型層可以訪問數(shù)據(jù)庫,可以防止客戶端直接訪問甚至操作數(shù)據(jù)庫,避免了信息和數(shù)據(jù)的安全隱患,并且多次采用MD5加密和驗證碼機制,防止系統(tǒng)被暴力破解,保證了系統(tǒng)較強的安全性。
3.5 系統(tǒng)擴展性好
Java EE為應(yīng)用系統(tǒng)的實現(xiàn)提供了標準的系統(tǒng)框架和服務(wù),如事務(wù)處理、 組件對象管理、對象生成控制、狀態(tài)維持、并發(fā)控制、安全檢測、資源共享等系統(tǒng)服務(wù), 在應(yīng)用系統(tǒng)的任意層中可增加新的功能, 而且不影響原有的系統(tǒng),使得本系統(tǒng)有很好的擴展性[7]。
4 結(jié)束語
基于Web的簡歷自動生成系統(tǒng)的目標在于減少用戶的重復(fù)操作和查詢操作,方便用戶,節(jié)省用戶的時間和精力,大致而言,本系統(tǒng)實現(xiàn)了以上目標?;赪eb的簡歷自動生成系統(tǒng)突破了原來的簡歷生成系統(tǒng),從制作各種精美的簡歷模板,即是word應(yīng)用技術(shù)制作簡歷模板發(fā)展到用戶直接通過點擊按鈕即可自動生成簡歷的系統(tǒng),方便了龐大的求職者群體,減少了用戶的無效時間從而提高了用戶的求職效率,讓用戶不再需要花費很多時間在制作精美簡歷上,使得用戶可以拿出更多的時間和精力來應(yīng)對筆試和面試。系統(tǒng)之后還可以將求職意向作為用戶選擇簡歷模板的索引,例如IT類的求職意向就推薦IT類的簡歷模板,實現(xiàn)用戶簡歷模板的個性化推薦,或者設(shè)置多類行業(yè)簡歷模板提供給用戶選擇,都是系統(tǒng)需要改進的地方,相信這個基于Web的簡歷自動生成系統(tǒng)將會幫助到許多的畢業(yè)生求職者[8]。
參考文獻:
[1] 劉磊, 劉邦桂. 基于SSH框架的多用戶簡歷生成與管理系統(tǒng)設(shè)計和實現(xiàn)[J]. 現(xiàn)代計算機:專業(yè)版, 2016(36):58-62.
[2] 尼俊紅, 張麗, 張淼, 等. 基于Ajax和MVC的電力通信告警系統(tǒng)的設(shè)計實現(xiàn)[J]. 計算機應(yīng)用與軟件, 2013, 30(8):226-227,282.
[3] 龐博. 基于WEB的電子報刊管理平臺設(shè)計與實現(xiàn)[D].成都: 電子科技大學(xué), 2017.
[4] 鐘維琴. 基于B/S的基本信息管理系統(tǒng)[J]. 機電工程技術(shù), 2017(S1):307-312.
[5] 陳展翅. 基于WEB的電子商務(wù)平臺系統(tǒng)設(shè)計與開發(fā)[J]. 機電工程技術(shù), 2017(S2):213-216.
[6] 周文君. 基于網(wǎng)站制作的Web前端開發(fā)技術(shù)與優(yōu)化[J]. 電子技術(shù)與軟件工程, 2017(10):60.
[7] 蔣業(yè)軍, 葉艷, 吳敏. 基于Qt的計算機輔助英語系統(tǒng)的考試作答系統(tǒng)的設(shè)計與實現(xiàn)[J]. 計算機應(yīng)用與軟件, 2012, 29(12):196-197,236.
[8] 李杰, 劉夢赤. 基于INM的在線教學(xué)系統(tǒng)的設(shè)計與實現(xiàn)[J]. 計算機應(yīng)用與軟件, 2017, 34(4):28-34,59.