




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、本 科 畢 業(yè) 論 文(設(shè)計)院 系 軟件學(xué)院 題 目 人力資源管理系統(tǒng)招聘模塊的設(shè)計與實現(xiàn) 學(xué)生姓名 劉蛟龍 學(xué) 號 071251086 年 級 2007級 專 業(yè) 軟件工程 指導(dǎo)教師 職 稱 論文提交日期 摘 要人力資源是企業(yè)動態(tài)核心競爭力和持續(xù)競爭優(yōu)勢的源泉。作為企業(yè)大系統(tǒng)的一個子系統(tǒng),企業(yè)人力資源管理系統(tǒng)的有效運行直接決定了企業(yè)生存和發(fā)展的潛力。并且現(xiàn)代企業(yè)的規(guī)模不斷擴大,員工人數(shù)也越來越多,因此需要一個功能全面的人力資源管理系統(tǒng)對公司日益復(fù)雜的人事工作進行高效便捷的管理。本人力資源管理系統(tǒng)(Human Resources Management System,HRMS)包括組織管理、招
2、聘管理、人員配置、薪酬管理、系統(tǒng)管理5個部分。它可以對企業(yè)的人力資源管理方方面面進行分析、規(guī)劃、實施、調(diào)整,提高企業(yè)人力資源管理水平,使人力資源更有效的服務(wù)于組織或團體目標(biāo)。基于瀏覽器操作方式的人力資源管理信息系統(tǒng),完全突破了客戶端操作方式的局限性,使企業(yè)管理者、HR管理者等實現(xiàn)無論何時、何地都能進行人力資源商務(wù)工作,這尤其適合于具有較多分支機構(gòu)的公司和集團企業(yè)。隨著計算機網(wǎng)絡(luò)技術(shù)的發(fā)展,尤其是因特網(wǎng)的普遍應(yīng)用,傳統(tǒng)的C/S結(jié)構(gòu)的應(yīng)用正越來越多的被B/S結(jié)構(gòu)應(yīng)用取代。由于使用SSH框架開發(fā)具有可維護性強、能適應(yīng)不斷變化的業(yè)務(wù)需求的優(yōu)點,因此SSH框架被廣泛的應(yīng)用于Java web開發(fā)中。SSH
3、 在JavaEE項目中表示了3種框架,即 Spring + Struts +Hibernate。本項目小組基本完成了一個人力資源管理系統(tǒng)所具備的功能。實現(xiàn)了組織管理、招聘管理、人員配置、薪酬管理、系統(tǒng)管理五個功能模塊。組織管理負(fù)責(zé)公司的組織結(jié)構(gòu)和崗位的安排等工作;招聘管理負(fù)責(zé)實現(xiàn)公司的人員招聘的工作;人員配置負(fù)責(zé)實現(xiàn)員工的崗位的維護;薪酬管理負(fù)責(zé)薪酬管理:薪酬管理之言負(fù)責(zé)公司員工的工資的計算和管理;系統(tǒng)管理負(fù)責(zé)本系統(tǒng)的管理維護與操作記錄。本人在該項目的開發(fā)中承擔(dān)招聘管理子系統(tǒng)的實現(xiàn)。該論文首先簡單介紹了一下人力資源管理系統(tǒng)的應(yīng)用背景和發(fā)展情況,然后在第二章深入的介紹了本次開發(fā)系統(tǒng)所應(yīng)用的SSH
4、框架的相關(guān)技術(shù),接著第三章介紹該系統(tǒng)的招聘管理子系統(tǒng)的功能特點,第四章詳細(xì)的介紹了項目的分析、設(shè)計與實現(xiàn)的過程,并結(jié)合項目來介紹一下SSH框架的應(yīng)用,第五章對項目進行了總結(jié)和展望。關(guān)鍵詞:人力資源管理系統(tǒng),SSH技術(shù),Struts, Spring, HibernateAbstractHuman resources is the source of dynamic core competitiveness and sustainable competitive advantage of an enterprise. As a sub-system of the enterprise, effec
5、tive management of the human resources directly determines the potential of the living and development of a company. As the scale of the modern corporation keeps expanding and the number of employees gets larger, the company needs a fully functional human resource management system to effectively de
6、al with the increasingly complex personnel work. This human resources management system includes such five parts as organization management, recruitment Management, personnel allocation, compensation management and system management. Because of these parts, almost every aspect of human resources man
7、agement of a company can be analyzed, planed, implemented, adjusted and improved to make it serve the targets of many organizations or groups more efficiently.This is especially suitable for the companies who own many braches and group enterprise for the company managers, HR managers and so on can c
8、onduct their human resources work without the limitation of time and places based on the human resource management information system of the browser operating mode that completely broke through the limitation of client operation mode.Along with the development of the computer network technology, esp
9、ecially the widely-used Internet, traditional C/S structure of application is increasingly replaced by B/S structure. Since the development of SSH framework has its advantages of easy maintenance and adaptation to the continuous variations of the business requirement, SSH framework is widely used in
10、 the development of Java Web.In the program of JavaEE, SSH stands for three frameworks: Spring + Struts +Hibernate. This project team has basically completed a human resource management system. Realizing the five modules like the organization management, recruitment management, personnel allocation,
11、 compensation management, system management. Organization Management is responsible for the companys organizational structure and post arrangement work; recruitment management is responsible for staff recruitment; Staffing management is responsible for implementing the post maintenance; Salary manag
12、ement is responsible for compensation management; Systems management is responsible for this system maintenance and operation management of record. I undertake to the development of recruitment management subsystem.This thesis introduces the application background and development of human resource m
13、anagement system; then it deeply introduces some relative technologies of SSH; thirdly, the third chapter explains the characteristics of the systems Recruiting Management; then in the fourth chapter, it introduces the analysis, design and process of the project in detail, meanwhile, it introduces t
14、he application of SSH; and in the last part, it presents the conclusion and outlook of the project.Keywords:HRMS(Human Resources Management System), SSH Framework, Struts 目 錄摘 要IAbstractII目 錄IV第一章 概述/緒論11.1 人力資源管理項目背景11.1.1人力資源管理系統(tǒng)簡介11.1.2人力資源管理系統(tǒng)的發(fā)展歷史11.2 國內(nèi)外SSH技術(shù)現(xiàn)狀21.3 論文主要工作/組織結(jié)構(gòu)3第二章 基于SSH框架的web技
15、術(shù)概述42.1 Struts框架42.2 Spring框架62.3 Hibernate框架72.4 Tomcat服務(wù)器92.5 Oracle數(shù)據(jù)庫9第三章 人力資源管理系統(tǒng)概述103.1 系統(tǒng)整體描述103.2 招聘管理模塊103.2.1 招聘渠道管理113.2.2 招聘需求管理133.2.3 招聘活動管理143.2.4 應(yīng)聘者管理153.2.5 人才庫管理16第四章 SSH技術(shù)在招聘管理子系統(tǒng)的應(yīng)用174.1 功能說明174.2 用例描述174.3 子系統(tǒng)類圖184.4 子模塊設(shè)計194.4.1 招聘渠道管理設(shè)計194.4.2 招聘需求管理設(shè)計204.4.3 招聘活動管理設(shè)計204.4.4
16、應(yīng)聘者管理設(shè)計214.4.5 人才庫管理設(shè)計224.5 應(yīng)用SSH框架開發(fā)的具體流程234.5.1流程概述234.5.2 SSH框架配置244.5.3 Struts在項目中的應(yīng)用254.5.4 Hibernate在項目中的應(yīng)用284.5.5 Spring在項目中的應(yīng)用29第五章 總結(jié)與展望32參考文獻33致謝34第一章 概述/緒論1.1 人力資源管理項目背景1.1.1人力資源管理系統(tǒng)簡介人力資源管理,就是指運用現(xiàn)代化的科學(xué)方法,對與一定物力相結(jié)合的人力進行合理的培訓(xùn)、組織和調(diào)配,使人力、物力經(jīng)常保持最佳比例,同時對人的思想、心理和行為進行恰當(dāng)?shù)恼T導(dǎo)、控制和協(xié)調(diào),充分發(fā)揮人的主觀能動性,使人盡其
17、才,事得其人,人事相宜,以實現(xiàn)組織目標(biāo)。1人力資源管理系統(tǒng)(Human Resources Management System,HRMS)是現(xiàn)代企業(yè)借助計算機技術(shù)開發(fā)的對企業(yè)人力資源實現(xiàn)自動化管理的系統(tǒng)。21世紀(jì)是一個以知識為主宰的新時代,即大家熟悉的知識經(jīng)濟時代?,F(xiàn)代企業(yè)的競爭也不僅僅局限于傳統(tǒng)的技術(shù)、市場的競爭,而且也更加注重人才的競爭,企業(yè)在發(fā)展過程中,除了要維護和客戶的關(guān)系,掌握先進的行業(yè)生產(chǎn)技術(shù)之外,還必須擁有一批本領(lǐng)域中具有相當(dāng)才能的工作人員,才能在信息時代的經(jīng)濟浪潮中立于不敗之地。人才是企、事業(yè)單位的寶貴財富,是人力資源管理的核心。吸引人才,留住人才成為企業(yè)人力資源管理的一個重要
18、課題。因此需要人力資源管理系統(tǒng)將對企業(yè)的組織結(jié)構(gòu)、招聘管理、日常管理、薪酬管理等方面提供高效便捷的現(xiàn)代化管理。人力資源管理系統(tǒng)(Human Resources Management System,HRMS)包括人事日常事務(wù)、薪酬、招聘、培訓(xùn)、考核以及人力資源的管理也指組織或社會團體運用系統(tǒng)學(xué)理論方法,對企業(yè)的人力資源管理方方面面進行分析、規(guī)劃、實施、調(diào)整,提高企業(yè)人力資源管理水平,使人力資源更有效的服務(wù)于組織或團體目標(biāo)。21.1.2人力資源管理系統(tǒng)的發(fā)展歷史第一代人力資源管理系統(tǒng)出現(xiàn)于20世紀(jì)60年代末期,除了能自動計算人員薪酬外,幾乎沒有更多如報表生成和數(shù)據(jù)分析等功能,也不保留任何歷史信息。
19、第二代人力資源管理系統(tǒng)出現(xiàn)于20世紀(jì)70年代末,對非財務(wù)人力資源信息和薪資的歷史信息都進行設(shè)計,也有了初級的報表生成和數(shù)據(jù)分析功能。第三代人力資源管理系統(tǒng)出現(xiàn)于20世紀(jì)90年代末,這一代HRMS的數(shù)據(jù)庫將幾乎所有與人力資源相關(guān)的數(shù)據(jù)都進行了收集與管理,更有強力報表生成工具、數(shù)據(jù)分析工具和信息共享的實現(xiàn)。3企業(yè)采用人力資源管理系統(tǒng)最主要的原因是,期望借由人力資源管理系統(tǒng),將人力資源運用到最佳經(jīng)濟效益,也由于知識經(jīng)濟的來臨,所謂人力資本的觀念已經(jīng)形成,人力資本的重要性更不下于土地、廠房、設(shè)備與資金等,甚至超越,除此之外,人是知識的載體,為了有效運用知識,將知識發(fā)揮最大的效用,便需要妥善的人力資源管
20、理,才能夠發(fā)揮人力資源的最佳效用。1.2 國內(nèi)外SSH技術(shù)現(xiàn)狀SSH(Struts+Spring+Hibernate) 是目前國內(nèi)外眾多知名軟件企業(yè)最主流的應(yīng)用技術(shù), 也是JavaEE 未來發(fā)展的趨勢, 在項目開發(fā)實踐中應(yīng)用該構(gòu)架,降低了程序的復(fù)雜度, 易于調(diào)試, 減輕了程序員的負(fù)擔(dān), 具有很強的擴展性,該結(jié)合框架一定具有美好的前景。在web應(yīng)用程序產(chǎn)生時就有的開源框架。在19992000年,開發(fā)者們意識到JSP“Model1”的缺陷,JSP中充斥著請求處理代碼和靜態(tài)數(shù)據(jù)模板,這意味著你不得不把業(yè)務(wù)邏輯和復(fù)雜的HTML以及其他的標(biāo)簽混到一起。20012002年間,Apache開源組織發(fā)布的St
21、ruts改變了這個狀況,雖然它并非一個完美的框架,但是經(jīng)過多年的發(fā)展,Struts已經(jīng)成為了一個高度成熟的框架,不管是穩(wěn)定性還是可靠性都得到了廣泛的證明。Struts幾乎在每一個JavaEE項目中得到應(yīng)用,這使得它成為JavaEE架構(gòu)的一個重要組成部分。甚至很多保守的組織也將其作為軟件底層的一部分,并同意接受Apache的開源協(xié)議條款。市場占有率超過20%,擁有豐富的開發(fā)人群,Struts幾乎已經(jīng)成為了事實上的工業(yè)標(biāo)準(zhǔn)。4Spring是java平臺上的一個開源應(yīng)用框架。它的第一個版本是由Rod Johnson寫出來的。Rod在他的Expert One-On-One Java EE Design
22、 and Development(Java企業(yè)應(yīng)用設(shè)計與開發(fā)的專家一對一)一書中首次發(fā)布了這個框架。該框架也可以移植到.NET的環(huán)境下。 Spring的框架首次在2003年6月的Apache 2.0的使用許可中發(fā)布。第一個具有里程碑意義的版本是2004年3月發(fā)布的1.0。2004年9月和2005年3月先后又有重要的版本面世。 Spring框架本身并沒有強制實行任何特別的編程模式。在Java社區(qū)里,Spring作為EJB模型之外的另外一個選擇甚至是替代品而廣為流行。從設(shè)計上看,Spring給予了Java程序員許多的自由度,但同時對業(yè)界常見的問題也提供了良好的文檔和易于使用的方法。 Spring框
23、架的核心功能在任何Java應(yīng)用中都是適用的。在基于Java企業(yè)平臺上的web應(yīng)用中,大量的拓展和改進得以形成。為此,Spring獲得了廣泛的歡迎,并被許多公司認(rèn)可為具有戰(zhàn)略意義的重要框架。5Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。它是第一個功能健全的解決關(guān)系對象影射解決方案。雖然在功能上,它沒有TopLink多樣。但在那些最常用的功能上,Hibernate實現(xiàn)的更加健壯,并且有一個非常專業(yè)的團隊提供全職的開發(fā)。Hibernate并不是全新的,它的ORM思想在這個領(lǐng)域很普遍,但它提
24、供的編程模型比其他任何競爭者都容易使用、都來的直接,它為ORM的使用提供了更加易用、廉價的途徑。 Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序?qū)嵱?,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。61.3 論文主要工作/組織結(jié)構(gòu)本論文是基于人力資源管理系統(tǒng)項目來實現(xiàn)的。論文在第一章首先介紹了人力資源管理的內(nèi)容,強調(diào)了現(xiàn)代企業(yè)對于一個穩(wěn)健高效的人力資源管理系統(tǒng)需求的重要性,接著介紹了開發(fā)項目使用的技術(shù)的發(fā)展情況。在第二章會詳細(xì)的討論項目開發(fā)的實際過程中所使用
25、到的技術(shù)。接著在第三章,作者會介紹人力資源管理系統(tǒng)中負(fù)責(zé)招聘的模塊的功能,詳細(xì)展示整個招聘流程。第四章會結(jié)合項目的開發(fā)過程來討論SSH框架和Oracle數(shù)據(jù)庫的使用,重點解決在實際開發(fā)中遇到的一些問題。最后在第五章會對系統(tǒng)進行總結(jié)和展望。第二章 基于SSH框架的web技術(shù)概述2.1 Struts框架Struts是Jakarta的一個字項目,它提供了一種方法,可以在一個Web應(yīng)用程序中一起使用Java Server Pages(JSP)和Servlet。它的目的是要解決完全由JSP或Servelt實現(xiàn)的傳統(tǒng)應(yīng)用程序中固有的問題。Struts只是一個MVC框架,用于快速開發(fā)JavaWeb應(yīng)用程序,
26、這樣以3層的結(jié)構(gòu)來開發(fā)軟件項目,不但使開發(fā)的機構(gòu)明了,而且還有助于項目的維護。Struts框架視圖如圖2.1所示。Struts的重點在C(Controller)控制端,也為V(View)視圖端提供了一系列定制的標(biāo)簽。但Struts幾乎沒有涉及M(Model)模型端,所以Struts可以采用Java實現(xiàn)任何形式的商業(yè)邏輯,比如使用Spring來實現(xiàn)業(yè)務(wù)的功能。7圖2.1 Struts框架MVC流程圖Model部分采用JavaBean或EJB組件或Spring的Bean來設(shè)計和實現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯。根據(jù)不同的請求從Action派生具體的Action處理對象。Action處理對象則根據(jù)需要完成的任務(wù)來
27、調(diào)用由Bean構(gòu)成的業(yè)務(wù)組件。Action還可以創(chuàng)建ActionFrom的派生類實現(xiàn)對客戶端表單書籍的封裝及簡單的校驗。View部分采用JSP實現(xiàn)。Struts提供了豐富的標(biāo)簽庫,通過標(biāo)簽庫可以減少腳本的使用,自定義的標(biāo)簽庫可以實現(xiàn)與Model的有效交互,并增加了現(xiàn)實功能。對應(yīng)上圖的JSP部分。 Controller組件有兩個部分組成系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器。系統(tǒng)核心控制器,對應(yīng)上圖的ActionServlet。該控制器由Struts框架提供,繼承 Servlet類,因此可以配置成標(biāo)注的Servlet。該控制器負(fù)責(zé)攔截所有的 請求,然后根據(jù)用戶請求決定是否要轉(zhuǎn)給業(yè)務(wù)邏輯控制器。業(yè)務(wù)邏輯控
28、制器,負(fù)責(zé)處理用戶請求,本身不具備處理能力,而是調(diào)用Model來完成處理。對應(yīng)Action部分。下面介紹一些Struts框架中重要的組件。Struts配置文件:這是將struts組件結(jié)合在一起的配置文件struts-config.xml。該文件在服務(wù)器啟動時加載到計算機內(nèi)容,指導(dǎo)整個應(yīng)用程序的工作,是核心配置文件。ActionServlet:ActionServlet類是Struts的控制中心類,所有的URL地址映射、ActionForm的匹配和Action的執(zhí)行都需要這個類進行導(dǎo)航。ActionClass:Action類真正實現(xiàn)應(yīng)用程序的事務(wù)邏輯,它們負(fù)責(zé)處理請求。ActionForm:封裝
29、用戶的請求數(shù)據(jù),傳遞給Action類;ActionMapping :將特定請求映射到特定Action的相關(guān)信息存儲在ActionMapping中,ActionServelt將ActionMapping傳送到Action類的perform()方法,Action將使用ActionMapping的findForward()方法,此方法返回一個指定名稱的ActionForward,這樣Action就完成了本地轉(zhuǎn)發(fā)。若沒有找到具體的ActionForward,就返回一個null。ActionForward:用來指示操作轉(zhuǎn)移的對象 ActionError:用來存儲和回收錯誤 Struts標(biāo)記庫:可以減輕開
30、發(fā)顯示層次的工作:對應(yīng)于圖2.1,我們可以簡單描述一個Struts應(yīng)用程序的簡要執(zhí)行流程:(1) 客戶端瀏覽器發(fā)出請求;(2) 服務(wù)器端的Struts中心類ActionServlet找到struts-config.xml文件,并放入到內(nèi)存,將文件中的內(nèi)容作為請求路徑映射;(3) ActionServlet類在struts-config.xml文件中找到相關(guān)的請求路徑映射后填充ActionForm類,將前臺傳進來的表單域打包成Bean;(4) 然后轉(zhuǎn)到Action類進行業(yè)務(wù)邏輯功能的實現(xiàn),比如增、刪、改、查數(shù)據(jù)庫中的數(shù)據(jù);(5) 再通過struts-config.xml文件的映射,找到功能邏輯處
31、理結(jié)束后顯示個客戶端用戶看到的頁面,轉(zhuǎn)發(fā)功能通過ActionForward對象實現(xiàn)。在第四章中,作者還將結(jié)合實際的項目來探討Struts的應(yīng)用。2.2 Spring框架Spring是一個開放源代碼的輕量級Java框架。主要作用是為了解決企業(yè)應(yīng)用程序維護的復(fù)雜性而創(chuàng)建的。Spring框架的解決辦法就是分層構(gòu)架,分層構(gòu)架允許程序員選擇使用哪一個組件,同時為JavaEE應(yīng)用程序開發(fā)提供集成的容器。Spring框架就是實現(xiàn)了AOP功能的IOC容器。在IOC容器的基礎(chǔ)上加入AOP不僅可以做到松耦合開發(fā),還具有面向切面編程的功能。Spring2.0七大模塊的架構(gòu),如圖2.2所示。圖2.2 Spring架構(gòu)
32、Spring core:Spring core提供Spring框架的基本功能。Spring core的主要組件是Beanfactory,它是工廠模式的實現(xiàn)。BeanFactory使用控制反轉(zhuǎn)(IOC)模式將應(yīng)用程序的配置和依賴性規(guī)范與實際的應(yīng)用程序代碼分開?;贗OC這種核心容器,可以將軟件項目以松耦合的結(jié)構(gòu)進行開發(fā),這樣可以有利于軟件項目的維護。Spring ORM:Spring框架插入了若干個ORM框架,從而提供了ORM的對象關(guān)系工具,其中包括JDO、Hibernate、和iBatis SQL Map。所有這些都遵從Spring的通用事務(wù)和DAO異常層次結(jié)構(gòu)。Spring Web:Web上
33、下文模塊建立在應(yīng)用程序上下文模塊之上,為基于web的應(yīng)用程序提供上下文。所以Spring框架支持與Jakarta Struts的集成。Web模塊還簡化了處理多部分mulpart請求,以及將請求參數(shù)綁定到域?qū)ο蟮墓ぷ?。IOC全稱Inversion Of Control,有些資料上頁使用DI全稱Dependency Injection,中文名稱為:依賴注入。IOC容器就是去管理Bean,創(chuàng)建Bean的一個內(nèi)存區(qū),在這個內(nèi)存區(qū)中可以將操作Bean的代碼以面向接口的方式進行開發(fā),這樣基于接口的多態(tài)性,程序結(jié)構(gòu)的分層就更加靈活化,維護和擴展也更方便。IOC概念從編程技術(shù)上來講是將接口和實現(xiàn)想分離。在Sp
34、ring中IOC容器占據(jù)了核心的功能,通過IOC容器就可以將Java Bean完全管理,包括創(chuàng)建、銷毀,還可以對數(shù)據(jù)庫的Java Bean進行自動化的事務(wù),包括一些企業(yè)級的應(yīng)用如JNDI、JavaMail也被支持,先前的EJB容器由于侵入式的開發(fā),如事務(wù)、狀態(tài)類必須在支持EJB的容器中進行開發(fā),這對平臺的移植性造成了很大的影響,所以Spring的IOC容器完全脫了平臺,用最簡單的Java Bean技術(shù)實現(xiàn)接口與分離,并且對組件的調(diào)配提供很好的支持。8Spring框架的功能可以用在任何JavaEE服務(wù)器中,大多數(shù)功能也適用于不受管理的環(huán)境。Spring的核心要點是:支持不綁定到特定JavaEE服
35、務(wù)容器的可重用業(yè)務(wù)和數(shù)據(jù)訪問對象。毫無疑問,這樣的對象可以再不同JavaEE環(huán)境(Web或EJB)中獨立應(yīng)用程序,測試環(huán)境之間重用。2.3 Hibernate框架JBoss公司的Hibernate開源項目為企業(yè)級開發(fā)中的數(shù)據(jù)庫持久層技術(shù)注入了新鮮的血液,它不僅對跨數(shù)據(jù)庫、事務(wù)封裝、ORM映射、延遲加載等這些細(xì)節(jié)技術(shù)提供了完善的解決方案,也對一些在程序開發(fā)中容易忽略的問題進行了良好的封裝和規(guī)劃,具體有以下幾個方面:(1) 通過使用ORM-Object-relational mapping映射,以Bean的形式操作數(shù)據(jù)庫中的記錄;(2) 強大的一級、二級緩存機制結(jié)合數(shù)據(jù)庫連接池POOL,這樣使CU
36、RD操作效率得到大大提升(3) 在對SQL的可維護性Hibernate也做得非常優(yōu)秀,將系統(tǒng)中大量的SQL語句放入XML文件中進行統(tǒng)一管理,有助于項目的總體設(shè)計及維護修改;(4) Spring+Hibernate+范型是一個強大的組合,這樣可以免去編寫大量的DAO代碼,減少了工作量,而且維護性大大增強。9Hibernate的框架結(jié)構(gòu)圖如圖2.3所示:圖2.3Hibernate結(jié)構(gòu)Hibernate的核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對
37、持久化對象進行存取,還能夠進行事務(wù)控制。下面對這五個核心接口分別加以介紹。 10Session接口負(fù)責(zé)執(zhí)行被持久化對象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對象是非線程安全的。同時,Hibernate的session不同于JSP應(yīng)用中的 Session。這里當(dāng)使用session這個術(shù)語時,其實指的是Hibernate中的session,而以后會將 Session對象稱為用戶session。 SessionFactory接口負(fù)責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲源的代理,并負(fù)責(zé)創(chuàng)建Session對象。這里用到了工廠模
38、式。需要注意的是SessionFactory并不是輕量級的,因為一般情況下,一個項目通常只需要一個SessionFactory就夠,當(dāng)需要操作多個數(shù)據(jù)庫時,可以為每個數(shù)據(jù)庫指定一個SessionFactory。 Configuration接口負(fù)責(zé)配置并啟動Hibernate,創(chuàng)建SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實例首先定位映射文檔位置、讀取配置,然后創(chuàng)建SessionFactory對象。 Transaction接口負(fù)責(zé)事務(wù)相關(guān)的操作。它是可選的,開發(fā)人員也可以設(shè)計編寫自己的底層事務(wù)處理代碼。 Query和Criteria接口負(fù)
39、責(zé)執(zhí)行各種數(shù)據(jù)庫查詢。它可以使用HQL語言或SQL語句兩種表達(dá)方式。Hibernate的完美主要是體現(xiàn)在ORM上。ORM的概念是數(shù)據(jù)持久層的一種子實現(xiàn),它通過將映射的機制,把一條數(shù)據(jù)庫中的記錄處理成一個Java的class(bean)處理,這樣在CURD的處理上,真正實現(xiàn)了以面向?qū)ο箝_發(fā),也將軟件的后期維護的周期大大縮短2.4 Tomcat服務(wù)器Tomcat是一個免費開源的Servlet容器,它是Apache基金會Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發(fā)而成。由于有了Sun公司的參與和支持,最新的Servlet和JSP規(guī)范總能在Tomcat中得到體
40、現(xiàn)。Tomcat不僅是一個Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能,如處理HTML頁面,簡單的域名管理,配置JNDI等。Tomcat 很受廣大程序員的喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。 Tomcat 是一個輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對于一個初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺機器上配置好Apache 服務(wù)器,可利用它響應(yīng)對HTML 頁面的訪問請求。實際上Tomca
41、t 部分是Apache 服務(wù)器的擴展,但它是獨立運行的,所以當(dāng)你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。112.5 Oracle數(shù)據(jù)庫Oracle數(shù)據(jù)庫是一種大型數(shù)據(jù)庫系統(tǒng),一般應(yīng)用于商業(yè),政府部門,它的功能很強大,能夠處理大批量的數(shù)據(jù),在網(wǎng)絡(luò)方面也用的非常多。Oracle數(shù)據(jù)庫管理系統(tǒng)是一個以關(guān)系型和面向?qū)ο鬄橹行墓芾頂?shù)據(jù)的數(shù)據(jù)庫管理軟件系統(tǒng),其在管理信息系統(tǒng)、企業(yè)數(shù)據(jù)處理、因特網(wǎng)及電子商務(wù)等領(lǐng)域有著非常廣泛的應(yīng)用。因其在數(shù)據(jù)安全性與數(shù)據(jù)完整性控制方面的優(yōu)越性能,以及跨操作系統(tǒng)、跨硬件平臺的數(shù)據(jù)互操作能力,使得越來越多的用戶將Oracle作為其應(yīng)用數(shù)據(jù)的處
42、理系統(tǒng)。 Oracle數(shù)據(jù)庫是基于“客戶端/服務(wù)器”模式結(jié)構(gòu)??蛻舳藨?yīng)用程序執(zhí)行與用戶進行交互的活動。其接收用戶信息,并向“服務(wù)器端”發(fā)送請求。服務(wù)器系統(tǒng)負(fù)責(zé)管理數(shù)據(jù)信息和各種操作數(shù)據(jù)的活動。12第三章 人力資源管理系統(tǒng)概述3.1 系統(tǒng)整體描述本系統(tǒng)采用Struts1.2+Spring2.5+Hibernate3.0進行開發(fā),使用Oracle11g數(shù)據(jù)庫作為系統(tǒng)的數(shù)據(jù)庫,在服務(wù)器的選擇上,我們使用的是Tomcat6.x。本人力資源管理系統(tǒng)由5個子系統(tǒng)構(gòu)成:組織結(jié)構(gòu)子系統(tǒng)、招聘管理子系統(tǒng)、薪酬管理子系統(tǒng)、人員配置子系統(tǒng)、系統(tǒng)管理子系統(tǒng)。這5個系統(tǒng)互相協(xié)作,共同完成對企業(yè)的人力資源的管理。組織結(jié)構(gòu)
43、子系統(tǒng)以樹型的方式顯示組織結(jié)構(gòu)信息、組織單元之間的匯報關(guān)系、與組織單元中相關(guān)的信息。招聘管理子系統(tǒng)的主要職責(zé)是對公司的招聘活動進行管理,根據(jù)公司的招聘需求組織招聘活動,并且對招聘活動、應(yīng)聘者進行記錄,而且還要記錄應(yīng)聘者面試的結(jié)果,并根據(jù)面試結(jié)果將應(yīng)聘者信息轉(zhuǎn)入入職管理或者將應(yīng)聘者加入人才庫。人員配置子系統(tǒng)的主要職責(zé)是為人力專員進行人員配置管理提供的相應(yīng)的功能。包括員工的入職、試用期的設(shè)定和修改、人員的調(diào)動、員工的離職和員工信息管理。薪酬管理子系統(tǒng)實現(xiàn)企業(yè)員工薪酬的管理,包括了包括工資項目管理、固定工資管理、導(dǎo)入項目數(shù)據(jù)錄入、工資結(jié)算管理、報表管理共5個部分。作者本次完全負(fù)責(zé)招聘管理子系統(tǒng)的分析
44、、設(shè)計與實現(xiàn),因此接下來主要對招聘管理子系統(tǒng)進行詳細(xì)的介紹。3.2 招聘管理模塊人才是企業(yè)之根本,現(xiàn)在企業(yè)的競爭僅僅是技術(shù)、市場的競爭,更是人才的競爭。現(xiàn)在的社會,人才流動很快,而且人才需求的變動也是很迅速的。對應(yīng)于公司的不斷發(fā)展,我們需要不斷地擴充已有的人才儲備規(guī)模,招聘一些公司急需的人員。因此我們需要單獨的設(shè)立招聘管理模塊,對人員招聘進行總體的管理。招聘管理模塊的界面如圖3.1所示:該系統(tǒng)包括招聘渠道管理、招聘需求管理、招聘活動管理、應(yīng)聘者管理、人才庫管理5個子模塊。下面,我們將具體介紹這5個模塊的功能。圖3.1 招聘管理系統(tǒng)菜單界面3.2.1 招聘渠道管理招聘渠道管理系統(tǒng)主要是對招聘渠道
45、進行收集管理,以便更好的實現(xiàn)招聘的效果。該模塊需要管理招聘渠道信息、渠道聯(lián)系人信息,并且要不斷地維護招聘渠道的信息。招聘渠道管理界面如圖3.2所示。圖3.2 招聘渠道管理界面招聘專員登錄系統(tǒng)進入招聘渠道管理子模塊后,首先展示的是全部招聘渠道的詳細(xì)信息。在圖3.2中我們可以看到,招聘渠道信息包括招聘渠道名稱、聯(lián)系人、聯(lián)系 、簡介、地址等信息。招聘專員如果有新搜集的招聘渠道需要添加到系統(tǒng),則選擇新建招聘渠道進行招聘渠道的添加,如圖3.3所示,招聘專員需要填寫相關(guān)的信息,點擊增加按鈕,系統(tǒng)會保存該渠道信息。圖3.3 增加招聘渠道招聘專員點擊對應(yīng)的招聘渠道的修改按鈕,則會轉(zhuǎn)到修改界面,對招聘渠道的信息
46、進行維護。如圖3.4所示,將聯(lián)系人由張老師改為李老師,聯(lián)系 也做了修改。點擊修改按鈕后將保存修改后的信息。圖3.4 修改招聘渠道招聘專員還可以點擊刪除按鈕進行渠道刪除操作,刪除會彈出提示框提醒用戶是否要進行刪除操作,如圖3.5所示,點擊刪除東南大學(xué)這一渠道后出現(xiàn)的提示信息。圖3.5 刪除招聘渠道我們看一下經(jīng)過前面的一些增、刪、改操作后信息的情況,如圖3.6所示, 刪除了東南大學(xué)這一條目,新增了南京財經(jīng)大學(xué)條目。圖3.6 招聘渠道變化信息最后,我們可以根據(jù)渠道名稱進行模糊搜索,查詢滿足關(guān)鍵字的招聘渠道,如圖3.7,我們輸入“南京大學(xué)”四個字后,會出現(xiàn)“南京大學(xué)軟件學(xué)院”的條目。圖3.7 查詢招聘
47、渠道3.2.2 招聘需求管理招聘需求管理是管理企業(yè)內(nèi)各個部門對于人員的需求,如圖3.8,招聘需求包括需求部門、需求人數(shù)、實招人數(shù)、差額、需求描述和狀態(tài)等信息。圖3.8 招聘需求管理界面招聘專員登錄系統(tǒng)進入招聘需求管理界面后,選擇增加按鈕后新建招聘需求;在查詢欄中選擇相關(guān)的查詢條件可進行招聘信息的查詢;如果招聘需求有變化,招聘專員選擇對應(yīng)的招聘需求后可以修改或刪除該招聘需求;當(dāng)公司舉辦招聘活動舉辦時,如果對應(yīng)的招聘需求成功招聘到員工后,系統(tǒng)將會自動更新實招人數(shù)和差額人數(shù)。 3.2.3 招聘活動管理當(dāng)企業(yè)不同部門的需求積累到一定程度后,企業(yè)相關(guān)負(fù)責(zé)人會決定召開招聘活動,此時就需要在招聘活動管理子系
48、統(tǒng)中進行招聘活動的管理。圖3.9 招聘活動管理界面招聘管理的界面如圖3.9所示,界面中顯示了有關(guān)于招聘活動的名稱、活動地點、活動時間、聯(lián)系人和聯(lián)系 的信息,點擊查看活動需求按鈕,會顯示該活動所包含的招聘需求,如圖3.10所示。圖3.10 招聘活動需求查看招聘專員可以輸入活動名稱和活動地點對招聘活動進行查詢操作;也可以對招聘活動的相關(guān)信息進行修改;如果該招聘活動正在舉行時,招聘專員點擊開始招聘進入招聘界面,開始對應(yīng)聘者面試,如圖3.11所示。圖3.11 面試記錄界面招聘專員要選擇部門崗位、應(yīng)聘者,并且記錄下面試的記錄。最后決定此次的面試結(jié)果,如果錄用該應(yīng)聘者,則將該應(yīng)聘者信息轉(zhuǎn)入入職管理系統(tǒng);如
49、果由于某些原因該應(yīng)聘者暫時不能入職,則可以考慮將該應(yīng)聘者加入人才庫,我們可以在人才庫中查看到對應(yīng)的應(yīng)聘者的信息;否則就拒絕錄用。3.2.4 應(yīng)聘者管理招聘活動舉行,招聘專員需要對應(yīng)聘者的信息進行管理。應(yīng)聘者管理,包括應(yīng)聘者的創(chuàng)建、信息維護、應(yīng)聘者查詢等相關(guān)操作,應(yīng)聘者管理的界面如圖3.12所示。圖3.12 應(yīng)聘者管理界面應(yīng)聘者信息知識包含該應(yīng)聘者的一些簡要信息,比如姓名、身份證號、新別、出生日期、聯(lián)系 和簡介等。應(yīng)聘者狀態(tài)由系統(tǒng)生成,剛創(chuàng)建的應(yīng)聘者,其狀態(tài)為“未面試”(招聘活動舉行時,進行面試的時候也只能從狀態(tài)為“未面試的”的應(yīng)聘者中選擇),同意錄用的應(yīng)聘者狀態(tài)為“錄用”,加入到人才庫的應(yīng)聘者
50、狀態(tài)為“加入人才庫”,被拒絕的應(yīng)聘者狀態(tài)為“拒絕”。同樣的,招聘專員也能對應(yīng)聘者進行新建、修改、查詢、刪除操作。3.2.5 人才庫管理在對招聘者進行面試時,招聘專員登錄系統(tǒng)記錄面試的記錄;面試結(jié)束后,如果應(yīng)聘者符合公司要求,招聘專員將應(yīng)聘者信息轉(zhuǎn)入入職管理系統(tǒng);如果符合公司要求但是暫時不能入職,則招聘專員將應(yīng)聘者加入人才庫。同時,對于離職的員工,也統(tǒng)一將其信息加入到人才庫中。人才庫界面如圖3.13所示。圖3.13 人才庫管理界面招聘專員可以對人才記錄進行修改維護和查詢操作,但是不能增加,因為人才庫記錄的來源為招聘暫時不能入職人員和離職人員。招聘專員點擊“點擊入職”按鈕后可以將該人員入職,其信息
51、也將轉(zhuǎn)入入職管理系統(tǒng)。第四章 SSH技術(shù)在招聘管理子系統(tǒng)的應(yīng)用4.1 功能說明招聘管理的主要職責(zé)是對公司的招聘活動進行管理,根據(jù)公司的招聘需求組織招聘活動,并且對招聘活動、應(yīng)聘者進行記錄,而且還要記錄應(yīng)聘者面試的結(jié)果,并根據(jù)面試結(jié)果將應(yīng)聘者信息轉(zhuǎn)入入職管理或者將應(yīng)聘者加入人才庫。招聘管理的主要功能:招聘渠道管理、招聘需求管理、招聘活動管理、應(yīng)聘者管理、記錄招聘活動結(jié)果和對應(yīng)聘者的面試結(jié)果、人才庫管理,提供對于招聘渠道、招聘需求、招活動、應(yīng)聘者和人才庫記錄的新建、修改、刪除、查詢操作。4.2 用例描述招聘管理子系統(tǒng)的用例說明如圖4.1所示。圖4.1 系統(tǒng)用例圖根據(jù)小組的需求的分析及討論,該子系統(tǒng)
52、的用例主要是對進行數(shù)據(jù)的增加、維護、刪除操作。4.3 子系統(tǒng)類圖圖4.2 招聘子系統(tǒng)整體類設(shè)計圖項目的實現(xiàn)采用了SSH框架,根據(jù)框架的MVC分層設(shè)計,在C(Control)端,使用Struts進行用戶的請求處理。Action類是用戶請求和業(yè)務(wù)邏輯之間的橋梁,每個Action充當(dāng)客戶的一項業(yè)務(wù)代理。在RequestProcessor類預(yù)處理請求時,在創(chuàng)建了Action的實例后,就調(diào)用自身的processActionPerform()方法,該方法在調(diào)用Action類的execute()。 Action的execute()方法調(diào)用模型的業(yè)務(wù)方法,完成用戶請求,然后根據(jù)執(zhí)行結(jié)果把請求轉(zhuǎn)發(fā)給M(Mode
53、l)層Service中的方法處理用戶的請求。當(dāng)涉及到對數(shù)據(jù)庫進行操作的時候,使用Hibernate框架對持久層進行統(tǒng)一的管理。DAO類就是Hibernate對數(shù)據(jù)庫進行操作時的對象類,通過POJO封裝數(shù)據(jù),以面向?qū)ο蟮姆绞竭M行數(shù)據(jù)庫操作。V(View)層是使用的JSP頁面技術(shù),配套Struts標(biāo)簽的使用,使得開發(fā)更有效率。4.4 子模塊設(shè)計4.4.1 招聘渠道管理設(shè)計招聘渠道管理,包括招聘渠道信息的查詢、錄入、編輯、刪除。EmployChannelAction類:該類根據(jù)招聘專員對招聘渠道的操作請求,調(diào)用EmployChannelService中的方法對操作進行處理,見表4.1。屬性名數(shù)據(jù)類型
54、屬性說明employChannelServiceEmployChannelService對應(yīng)于招聘渠道的服務(wù)類表4.1 EmployChannelAction類表EmployChannelService類:該類提供對招聘渠道的各種操作的服務(wù),包括新建、添加、查詢、修改、刪除等服務(wù),見表4.2屬性名數(shù)據(jù)類型屬性說明employChannelEmployChannel招聘渠道的實體類表4.2 EmployChanneSerivce類表EmployChannelDAO類:該類提供對招聘渠道進行數(shù)據(jù)庫的操作。EmployChannel類:該類是招聘渠道的實體類,見表43。屬性名數(shù)據(jù)類型屬性說明 id
55、int招聘渠道編號name String招聘渠道名字phoneString招聘渠道聯(lián)系 descriptionString招聘渠道簡介表4.3 EmployChannel類表相關(guān)數(shù)據(jù)表:招聘渠道表(EmployChannel)。4.4.2 招聘需求管理設(shè)計招聘渠道需求,包括招聘需求信息的查詢、錄入、編輯、刪除、反饋。EmployRequirementAction類:該類根據(jù)招聘專員對招聘需求的操作請求,調(diào)用EmployRequirementService中的方法對操作進行處理,見表4.4。屬性名數(shù)據(jù)類型屬性說明employRequirementServiceEmployRequirementS
56、ervice招聘需求的服務(wù)類表4.4 EmployRequirementAction類表EmployRequirementService類:該類提供對招聘需求的各種操作的服務(wù),包括新建、添加、查詢、修改、刪除等服務(wù),見表4.5。屬性名數(shù)據(jù)類型屬性說明employRequirementEmployRequirement招聘需求的實體類 表4.5 EmployRequirementService類表EmployRequirementDAO類:該類提供對招聘需求進行數(shù)據(jù)庫的操作。EmployRequirement類:該類是招聘需求的實體類,見表4.6。屬性名數(shù)據(jù)類型屬性說明idint招聘需求編號date Date創(chuàng)建招聘需求日期department int提出招聘需求的部門idneedint本次招聘需求所需人數(shù)requirement String招聘需求的一些描述result int本次招聘需求最終招到的人數(shù)表4.6 EmployRequirement類表相關(guān)數(shù)據(jù)表:招聘需求表(Emplo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)資化肥服務(wù)合同范本
- 70代勞動合同范本
- 公司設(shè)備收購合同范本
- 云南元旦晚會舞臺施工方案
- 出口黃金加工合同范本
- 公司交接合同范本
- 勞務(wù)委托施工合同范本
- 倉庫地面清潔合同范本
- 兼職推廣合同范本
- 加盟貨車合同范本
- 2025年湖南工程職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- 招標(biāo)代理服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- 2024年云南中煙工業(yè)有限責(zé)任公司招聘筆試真題
- 2024年山東輕工職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2024年哈爾濱電力職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2024年金鑰匙科技知識競賽試題及答案
- 三一重工全面預(yù)算管理
- 小公司財務(wù)報銷制度及報銷流程
- 《環(huán)境感知技術(shù)》2024年課程標(biāo)準(zhǔn)(含課程思政設(shè)計)
- 礦山用電安全培訓(xùn)課件
- 2025年中考語文一輪復(fù)習(xí):八年級上冊知識點梳理
評論
0/150
提交評論