軟件工程畢業(yè)設(shè)計(jì)論文_第1頁
已閱讀1頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  摘要</b></p><p>  人力資源管理系統(tǒng)是現(xiàn)代企業(yè)的核心業(yè)務(wù)系統(tǒng)之一,人力資源管理的狀況和水平對(duì)企業(yè)的運(yùn)作和效率至關(guān)重要?,F(xiàn)代企業(yè)人力資源管理的內(nèi)容非常豐富,可能包含檔案管理、合同管理、薪酬管理、招聘管理、績效管理、系統(tǒng)管理等很多部分。在本次畢業(yè)設(shè)計(jì)中,我們模擬實(shí)現(xiàn)了一家現(xiàn)代企業(yè)的人力資源管理系統(tǒng)中的部分子系統(tǒng)。由于現(xiàn)代企業(yè)都擁有功能完善的企業(yè)內(nèi)部網(wǎng),

2、所以該系統(tǒng)的體系結(jié)構(gòu)采用了以SSH框架為基礎(chǔ)的Java企業(yè)級(jí)開發(fā)模式。SSH框架作為目前最流行和最成熟的Java企業(yè)級(jí)開發(fā)技術(shù),在軟件系統(tǒng)的效率、可用性、可維護(hù)性等方面提供了優(yōu)秀的支持,并集成了當(dāng)前Java Web開發(fā)方面的最好技術(shù)。</p><p>  本人在該系統(tǒng)中主要承擔(dān)系統(tǒng)管理子系統(tǒng)的開發(fā)。該子系統(tǒng)包括用戶注冊(cè)、登錄、用戶管理、權(quán)限管理、用戶組管理等模塊。本文首先簡要介紹人力資源管理系統(tǒng)的一些應(yīng)用背景和應(yīng)

3、用狀況;其次介紹了該項(xiàng)目開發(fā)所采用的平臺(tái)、開發(fā)工具以及開發(fā)環(huán)境;本文重點(diǎn)描述了該系統(tǒng)開發(fā)的流程,從項(xiàng)目策劃、需求分析、系統(tǒng)設(shè)計(jì)、編碼與實(shí)現(xiàn)等階段詳細(xì)介紹了系統(tǒng)的開發(fā)過程、實(shí)現(xiàn)方案和策略等。</p><p>  關(guān)鍵詞:人力資源管理;系統(tǒng)管理;SSH框架;Java Web開發(fā);面向?qū)ο蠼?lt;/p><p><b>  Abstract</b></p>&l

4、t;p>  Human resource management system is one of the core business system of modern enterprises, the status and level of human resources management is very important for the running efficiency of a enterprise. The con

5、tent of a modern enterprise human resources management is very rich, it may contain archives management, contract management, compensation management, recruitment management, performance management, system management and

6、 so on many parts. In this graduation design, we simulate the impleme</p><p>  I mainly undertake system management subsystem in the system development. The subsystem includes user register, login, user mana

7、gement, rights management, user group management module, etc. This paper first briefly introduces some application background of the human resources management system and application conditions; Secondly introduces the a

8、dopted by the project development platform, development tools and development environments; This paper mainly describes the system development process, </p><p>  Key words:Human resource management;System ma

9、nagement;SSH framework;Java Web development;Object-oriented modeling</p><p><b>  目錄</b></p><p><b>  1. 緒論1</b></p><p>  1.1 研究背景1</p><p>  1.

10、2 設(shè)計(jì)目標(biāo)1</p><p>  1.3 關(guān)于本系統(tǒng)的基本介紹2</p><p>  1.4 論文結(jié)構(gòu)2</p><p>  2. 系統(tǒng)開發(fā)環(huán)境與技術(shù)3</p><p>  2.1 系統(tǒng)開發(fā)環(huán)境3</p><p>  2.1.1 MyEclipse介紹3</p><p>  2.

11、1.2 Tomcat服務(wù)器介紹4</p><p>  2.2 系統(tǒng)開發(fā)技術(shù)4</p><p>  2.2.1 JSP與Servlet技術(shù)4</p><p>  2.2.2 JavaScript簡介7</p><p>  2.2.3 MVC框架8</p><p>  2.2.4 SSH框架9</p>

12、;<p>  3. 系統(tǒng)需求分析14</p><p>  3.1 需求描述14</p><p>  3.1.1 系統(tǒng)界面設(shè)計(jì)及操作風(fēng)格的需求14</p><p>  3.1.2 系統(tǒng)功能描述14</p><p>  3.1. 3 系統(tǒng)運(yùn)行環(huán)境16</p><p>  3.2 系統(tǒng)的一般性規(guī)定

13、17</p><p>  3.2.1 對(duì)性能的規(guī)定17</p><p>  3.2.2 對(duì)時(shí)間特性的規(guī)定17</p><p>  3.2.3 輸入輸出要求17</p><p>  3.2.4 數(shù)據(jù)管理能力要求17</p><p>  3.2.5 網(wǎng)絡(luò)安全要求18</p><p>  4

14、. 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)19</p><p>  4.1 系統(tǒng)層次劃分19</p><p>  4.2 數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)19</p><p>  4.2.1數(shù)據(jù)庫的數(shù)據(jù)模型25</p><p>  4.3 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)28</p><p>  4.3.1 系統(tǒng)項(xiàng)目的文件夾結(jié)構(gòu)28</p>

15、<p>  4.3.2 登錄模塊31</p><p>  4.3.3 注冊(cè)模塊32</p><p>  4.3.4 系統(tǒng)管理子系統(tǒng)34</p><p>  4.3.5 檔案管理子系統(tǒng)40</p><p>  4.3.6 合同管理子系統(tǒng)42</p><p><b>  總 結(jié)45<

16、/b></p><p><b>  致 謝46</b></p><p><b>  參考文獻(xiàn)47</b></p><p><b>  1. 緒論</b></p><p><b>  1.1 研究背景</b></p><p&

17、gt;  隨著信息技術(shù)飛速發(fā)展,人們現(xiàn)在已處在數(shù)字化的生存空間之中。互聯(lián)網(wǎng)構(gòu)造了無限的信息資源,它的普及已經(jīng)從根本上改變了人們現(xiàn)實(shí)中的生活方式和工作方式,也改變了企業(yè)的經(jīng)營方式、管理方式和服務(wù)方式。</p><p>  傳統(tǒng)的依賴手工方式的記錄的管理方式已經(jīng)遠(yuǎn)無法滿足企業(yè)的需求,傳統(tǒng)的方式效率普遍較低,無法對(duì)數(shù)據(jù)進(jìn)行有效的、規(guī)范的管理,查詢比較困難,數(shù)據(jù)準(zhǔn)確性、安全性相對(duì)較差,那么企業(yè)對(duì)于新的管理平臺(tái)的需求是必然

18、的。通過新的管理系統(tǒng)平臺(tái),企業(yè)能夠大大提高各方面效率,而且方便了企業(yè)與員工之間的相互交流,能夠方便滿足將來的業(yè)務(wù)需求。</p><p>  當(dāng)今,網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,使得基于Web開發(fā)的各類信息系統(tǒng)已經(jīng)成為一種主流趨勢?;赪eb的系統(tǒng)具有的特點(diǎn):</p><p>  (1)信息的及時(shí)更新和發(fā)布;</p><p>  (2) 良好的用戶界面和接口;</p>

19、;<p>  (3) 方便操作和管理;</p><p> ?。?) 系統(tǒng)功能的通用性;</p><p> ?。?) 靈活性和可擴(kuò)展性;</p><p>  正是在這樣的社會(huì)大背景下,我們開始進(jìn)行“安博人力資源系統(tǒng)”的課題研究,其目的在于通過建設(shè)一個(gè)網(wǎng)站來實(shí)現(xiàn)基于Web的信息系統(tǒng)的上述特點(diǎn),以展現(xiàn)該類管理系統(tǒng)的快速、便捷、準(zhǔn)確地發(fā)布、管理信息,提供信息管

20、理的強(qiáng)大功能和作用。人力資源管理平臺(tái)可以幫助企業(yè)實(shí)現(xiàn)對(duì)人力資源信息數(shù)據(jù)更好的管理,大大提高工作人員的效率,幫助企業(yè)高層及時(shí)了解企業(yè)員工現(xiàn)狀。</p><p><b>  1.2 設(shè)計(jì)目標(biāo)</b></p><p>  開發(fā)設(shè)計(jì)本系統(tǒng)的任務(wù)是對(duì)人力資源信息數(shù)據(jù)的管理。通過該系統(tǒng)能夠讓用戶對(duì)檔案信息、合同信息進(jìn)行添加、刪除、修改、查詢;并能夠讓管理員對(duì)用戶進(jìn)行管理。<

21、/p><p>  開發(fā)系統(tǒng)的目標(biāo)是幫助人力資源公司進(jìn)行員工的檔案、合同信息管理,需要滿足的要求具體包括如下:</p><p>  (1) 網(wǎng)頁風(fēng)格符合人力資源企業(yè)的特點(diǎn),簡單實(shí)用;</p><p> ?。?) 能夠?qū)崿F(xiàn)對(duì)于人力資源信息數(shù)據(jù)的管理;</p><p> ?。?) 網(wǎng)站運(yùn)行安全、穩(wěn)定;</p><p>  1.3

22、 關(guān)于本系統(tǒng)的基本介紹</p><p> ?。?)系統(tǒng)名稱:安博人力資源管理平臺(tái)</p><p>  (2) 用戶:甘肅安博人力資源服務(wù)有限公司</p><p> ?。?) 運(yùn)行環(huán)境:Windows XP</p><p>  (4)開發(fā)平臺(tái):SSH框架、SQL Server 2005、Tomcat6.0</p><p>

23、; ?。?) 開發(fā)語言:Java</p><p><b>  1.4 論文結(jié)構(gòu)</b></p><p>  本文的章節(jié)安排如下:</p><p>  第一章:緒論,說明本文的研究背景、設(shè)計(jì)目標(biāo)和系統(tǒng)的基本信息介紹,為接下來系統(tǒng)后臺(tái)的分析與設(shè)計(jì)做準(zhǔn)備。</p><p>  第二章:系統(tǒng)開發(fā)環(huán)境與技術(shù),簡單介紹系統(tǒng)實(shí)現(xiàn)所依賴

24、環(huán)境和開發(fā)所用的技術(shù)。如MyEclipse、Tomcat服務(wù)器、SSH框架、JSP與Servle原理、JavaScript。</p><p>  第三章:系統(tǒng)需求分析,從系統(tǒng)功能需求和一般性規(guī)定對(duì)系統(tǒng)需求進(jìn)行了詳細(xì)闡述。</p><p>  第四章:系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),給出系統(tǒng)后臺(tái)的具體設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)各個(gè)模塊功能以及數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)。</p><p>  第五

25、章:總結(jié),對(duì)整個(gè)論文總結(jié),并針對(duì)目前工作中的不足對(duì)未來工作的展望。</p><p>  2. 系統(tǒng)開發(fā)環(huán)境與技術(shù)</p><p>  2.1 系統(tǒng)開發(fā)環(huán)境</p><p>  安博人力資源管理平臺(tái)以MyEclipse8.5為開發(fā)平臺(tái),且由Tomcat6.0充當(dāng)Web服務(wù)器來開發(fā)實(shí)現(xiàn)。</p><p>  2.1.1 MyEclipse介紹&

26、lt;/p><p>  MyEclipse(My Eclipse Enterprise Workbench)是一款商業(yè)軟件,是一個(gè)非常優(yōu)秀的用于開發(fā)Java、J2EE的Eclipse插件集合,是對(duì)EclipseIDE的擴(kuò)展,是基于Java和Eclipse的可擴(kuò)展開發(fā)平臺(tái),它的功能非常強(qiáng)大、支持也十分廣泛、特別是對(duì)各種開源產(chǎn)品的支持很不錯(cuò)。就其工具本身而言,它是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測

27、試和發(fā)布功能,利用它可以在數(shù)據(jù)庫和J2EE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面,極大地提高工作效率??梢哉f,MyEclipse幾乎囊括了目前所有主流開源產(chǎn)品的專屬eclipse開發(fā)工具。</p><p>  隨著MyEclipse 2013支持JQuery,你可以通過插件提升性能,并可添加動(dòng)畫效果到設(shè)計(jì)中。簡單而言,MyEclipse是eclipse的插件,也是一款功能非常強(qiáng)大的J2EE集成開發(fā)環(huán)境,支持代碼

28、編寫、配置、測試及除錯(cuò)。程序的功能包括:HTML智能編輯器、Java Servlet、Struts、JSF、CSS、JavaScript、SQL、Hibernate、Spring、EJB3等,帶有自動(dòng)完成和語法高亮顯示功能的J2EE編輯器。盡管eclipse是使用Java語言開發(fā)的,但它的用途并不限于Java語言。例如:支持諸如C/C++、COBOL和Eiffel及Perl等編程語言的插件。在結(jié)構(gòu)上,MyEclipse的特征包括:<

29、;/p><p>  (1) J2EE模型</p><p> ?。?) WEB開發(fā)工具</p><p><b> ?。?)數(shù)據(jù)庫服務(wù)</b></p><p>  (4) J2EE項(xiàng)目部署服務(wù)</p><p> ?。?) 應(yīng)用程序服務(wù)器的連接</p><p> ?。?)EJB開發(fā)工

30、具</p><p> ?。?) MyEclipse整合幫助</p><p>  由于MyEclipse結(jié)構(gòu)上的這種模塊化,使我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊可以進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。</p><p>  2.1.2 Tomcat服務(wù)器介紹</p><p>  Tomcat最初是由Sun公司的軟件架構(gòu)師詹姆斯·鄧肯·

31、戴維森開發(fā)的,后來在他的幫助下變?yōu)殚_源代碼,并由Sun貢獻(xiàn)給Apache基金會(huì)。Tomcat服務(wù)器是免費(fèi)開源代碼的Web應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶相對(duì)較少時(shí)被普遍使用,是開發(fā)和調(diào)試JSP程序的首選。實(shí)際上,Tomcat部分是Apache服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,因此,當(dāng)你運(yùn)行Tomcat時(shí),它實(shí)際上是作為一個(gè)與Apache獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。Tomcat是一個(gè)Servlet和JSP容器,具有處理

32、HTML頁面的功能,當(dāng)配置正確時(shí),Apache為HTML頁面服務(wù),而Tomcat實(shí)際上運(yùn)行JSP頁面和Servlet。</p><p>  由于Tomcat運(yùn)行時(shí)占用的系統(tǒng)資源少,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用程序的基本功能,它很受廣大程序員的喜歡;而且,它還在不斷地改進(jìn)和完善中,任何喜歡它的程序員都可更改它或加入新功能。由于Java的跨平臺(tái)特性,基于Java的Tomcat也具有跨平臺(tái)性。與傳統(tǒng)的桌面

33、應(yīng)用程序相比,Tomcat中的應(yīng)用程序是一個(gè)WAR文件。WAR是Sun提出的一種Web應(yīng)用程序格式,與JAR類似,是文件的一個(gè)壓縮包。這個(gè)包中的文件按一定的目錄結(jié)構(gòu)來組織:其根目錄下包含有html和Jsp文件或目錄,另外,還有一個(gè)WEB-INF目錄,這個(gè)目錄很重要。通常,在WEB-INF目錄下有一個(gè)web.xml文件和一個(gè)classes目錄,web.xml是應(yīng)用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或S

34、ervlet所依賴的其他類(如JavaBean)。通常,這些所依賴的類可以打包成JAR文件,然后放到WEB-INF下的lib目錄下。</p><p>  因?yàn)門omcat的技術(shù)先進(jìn)、性能穩(wěn)定,且免費(fèi),所以深受廣大程序開發(fā)者的喜愛,并得到了部分軟件開發(fā)商的認(rèn)可,已經(jīng)成為目前比較流行的Web應(yīng)用程序服務(wù)器。</p><p>  2.2 系統(tǒng)開發(fā)技術(shù)</p><p>  

35、安博人力資源管理平臺(tái)的開發(fā)技術(shù)是基于J2EE架構(gòu)的SSH框架技術(shù)。開發(fā)平臺(tái)是MyEclipse,Tomcat6.0作為服務(wù)器,JDK1.7.0_03作為工具包。</p><p>  2.2.1 JSP與Servlet技術(shù)</p><p>  JSP全稱Java Server Pages,是由SunMicrosystems公司倡導(dǎo),許多公司一起建立的一種動(dòng)態(tài)技術(shù)標(biāo)準(zhǔn)。其根本是一個(gè)簡化的Ser

36、vlet設(shè)計(jì),它實(shí)現(xiàn)了HTML語法中的Java擴(kuò)張(以<%,%>形式)。在傳統(tǒng)的網(wǎng)頁HTML文件中加入Java程序片段和JSP標(biāo)簽,就能夠使JSP網(wǎng)頁中的Java程序片段操縱數(shù)據(jù)庫、重新定向網(wǎng)頁,以及發(fā)送E-mail等,實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)站所需的功能。所有程序操作都在服務(wù)器端運(yùn)行,通常返回給客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。Web服務(wù)器在遇到訪問JSP頁面的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行的結(jié)

37、果連同JSP文件中的HTML代碼一并返回給客戶端。網(wǎng)絡(luò)上傳送給客戶端的僅僅是得到的結(jié)果,這樣大大降低了對(duì)客戶瀏覽器的要求,即使客戶瀏覽器端不支持Java,也可訪問JSP頁面。通常,JSP頁面很少進(jìn)行數(shù)據(jù)處理,只是用來實(shí)現(xiàn)網(wǎng)頁的靜態(tài)化,只是用來提取數(shù)據(jù),不會(huì)進(jìn)行業(yè)務(wù)處理。</p><p>  JSP是一種動(dòng)態(tài)頁面技術(shù),它的主要目標(biāo)是將表示邏輯從Servlet中分離出來。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)的顯示分離,支持可重

38、用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序開發(fā)變得容易、迅速。JSP頁面是由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被客戶端請(qǐng)求以后,對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返回給客戶端。JSP具備了Java技術(shù)的簡單易用,完全面向?qū)ο螅哂衅脚_(tái)無關(guān)性且安全可靠。</p><p>  Servlet是服務(wù)器上運(yùn)行的小程序,是一種獨(dú)立于平臺(tái)和協(xié)議的Java應(yīng)用程序,可以生成動(dòng)態(tài)的Web頁

39、面。Servlet位于Web服務(wù)器的內(nèi)部,通過Web服務(wù)器進(jìn)行加載,該Web服務(wù)器必須包含支持Servlet的java虛擬機(jī)。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序開發(fā),需要Servlet和JSP的配合才能完成。</p><p> ?。?)JSP工作原理</p><p>  JSP頁面通常以擴(kuò)展名為.jsp的純文本文件的形式存在服務(wù)器上,以當(dāng)一個(gè)JSP文件第一次被請(qǐng)求時(shí)

40、,JSP引擎把該JSP文件轉(zhuǎn)換成一個(gè)Servlet,而這個(gè)引擎也是一個(gè)Servlet。JSP引擎先把該Jsp文件轉(zhuǎn)換成一個(gè)Java源文件,在轉(zhuǎn)換時(shí)若發(fā)現(xiàn)語法錯(cuò)誤,轉(zhuǎn)換過程將中斷,并向服務(wù)器和客戶端輸出出錯(cuò)信息;若轉(zhuǎn)換成功,JSP引擎將用javac把該Java源文件編譯成相應(yīng)的class文件。然后創(chuàng)建一個(gè)該Servlet實(shí)例,該Servlet的Init()方法被執(zhí)行,此方法在Servlet的生命周期中只被執(zhí)行一次。然后,Service()

41、方法被調(diào)用來處理客戶端的請(qǐng)求。對(duì)于每一個(gè)請(qǐng)求,JSP引擎創(chuàng)建一個(gè)新的線程來處理該請(qǐng)求。若有多個(gè)客戶端同時(shí)請(qǐng)求該JSP文件,則該引擎會(huì)創(chuàng)建多個(gè)線程,每個(gè)線程對(duì)應(yīng)一個(gè)客戶端請(qǐng)求。JSP頁面被編譯成Servlet之后,其執(zhí)行代碼以獨(dú)立線程的形式一直存在服務(wù)器的內(nèi)存中,以后該JSP頁面再提出請(qǐng)求時(shí),就不需要重新編譯,至到該頁面被修改或Web應(yīng)用程序重新啟動(dòng)。當(dāng)需要銷毀某個(gè)文件時(shí),就調(diào)用Destroy()方法來釋放相應(yīng)的資源。圖2.1所示為JSP

42、的工作原理圖</p><p>  圖2.1 JSP的工作原理</p><p><b> ?。?)JSP語法 </b></p><p>  1)常用JSP命令:</p><p>  a. page---頁面指令,主要用來指定當(dāng)前JSP頁面的屬性。</p><p>  b. <jsp:inclu

43、de>---允許包含其他動(dòng)態(tài)和靜態(tài)文件。</p><p>  c. <jsp:forward>---將一個(gè)JSP文件傳給另一個(gè)JSP文件。</p><p>  d. <jsp:plugin>---可以通過Java插件在瀏覽器中運(yùn)行Java Applet 。</p><p>  e. <jsp:useBean>---是用來訪問

44、JavaBean的動(dòng)作標(biāo)記。當(dāng)JSP頁面使用<jsp:useBean>標(biāo)記時(shí),表示將引用一個(gè)JavaBean的實(shí)例。JavaBean標(biāo)記的語法格式如下:<jsp:useBean id=“實(shí)例名稱” scope=“范圍” class=“類名” type=“類的類型” beanName=“JavaBean的名稱/>。</p><p>  2)JSP內(nèi)置對(duì)象:</p><p&

45、gt;  為了方便WEB頁面開發(fā),JSP提供了一組內(nèi)置對(duì)象,這些內(nèi)置對(duì)象可以不經(jīng)顯式的聲明而在程序中直接使用,JSP的主要內(nèi)置對(duì)象有Request、Response、Out、Session等。通過這組內(nèi)置對(duì)象,可以實(shí)現(xiàn)頁面的一些請(qǐng)求輸入、輸出功能,還可實(shí)現(xiàn)數(shù)據(jù)在頁面之間的交互。</p><p>  a. Request對(duì)象:主要功能是接受客戶端以HTTP方式傳送的數(shù)據(jù),實(shí)現(xiàn)與客戶交互的功能。一般最常用的是它的ge

46、tParameter(String name)方法來獲取傳遞的參數(shù)。</p><p>  b. Response對(duì)象:主要功能是用來對(duì)客戶的請(qǐng)求做出響應(yīng),與Request對(duì)象對(duì)應(yīng)。Response對(duì)象用于將服務(wù)器的數(shù)據(jù)發(fā)送到客戶端,輸出的數(shù)據(jù)可以是各種數(shù)據(jù)類型,甚至是文件。一般經(jīng)常用到的是它的sendRedirect(URL url)方法來重定向當(dāng)前用戶訪問的url。</p><p>  

47、c. Out對(duì)象:主要功能是用于動(dòng)態(tài)地向客戶端輸出數(shù)據(jù)信息,主要作用是在Web瀏覽器內(nèi)輸出信息。在數(shù)據(jù)的輸出方面會(huì)經(jīng)常用到它的rintln(parameter)方法,該方法也是進(jìn)行糾錯(cuò)處理時(shí)一個(gè)比較有效的輸出方法。</p><p>  d. Session對(duì)象:主要功能用來保存每個(gè)用戶在會(huì)話期間的數(shù)據(jù)信息,這樣就方便了會(huì)話處理工作。當(dāng)用戶登陸網(wǎng)站時(shí),系統(tǒng)將為其生成一個(gè)session對(duì)象,用以記錄該用戶的個(gè)人信息,

48、當(dāng)用戶退出網(wǎng)站時(shí),該session對(duì)象將會(huì)自動(dòng)注銷。Session對(duì)象可以綁定若干個(gè)人的信息或java對(duì)象。</p><p>  2.2.2 JavaScript簡介</p><p>  JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)且具有相對(duì)安全性的客戶端腳本語言,也是一種廣泛應(yīng)用于客戶端WEB開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。它最初是由Netsca

49、pe公司的Brendan Eich設(shè)計(jì),是一種動(dòng)態(tài)、弱類型、基于原型的語言,內(nèi)置支持類。JavaScript是Sun公司的注冊(cè)商標(biāo)。完整的JavaScript實(shí)現(xiàn)包含三個(gè)部分:ECMAScript,字節(jié)順序記號(hào),文檔對(duì)象模型。</p><p>  JavaScript是為了適應(yīng)動(dòng)態(tài)網(wǎng)頁制作的需要而誕生的一種編程語言,現(xiàn)今廣泛地應(yīng)用于Internet網(wǎng)頁制作。JavaScript是由Netscape公司開發(fā)的一種腳

50、本語言(scripting language),或者稱為描述語言。JavaScript的出現(xiàn)使得用戶和網(wǎng)頁之間實(shí)現(xiàn)了一種動(dòng)態(tài)的、實(shí)時(shí)性的、交互性的關(guān)系,使得網(wǎng)頁包含了更多活躍的元素和更加精彩的內(nèi)容。在HTML基礎(chǔ)上,使用JavaScript可以開發(fā)交互式Web網(wǎng)頁。JavaScript由于短小精悍,且是在客戶機(jī)上執(zhí)行的,因此大大提高了網(wǎng)頁的交互能力和瀏覽速度。</p><p>  JavaScript加入網(wǎng)頁的兩

51、種方法:</p><p> ?。?)直接加入HTML文檔</p><p>  這是最常用的方法,大部分含有JavaScript的網(wǎng)頁都采用這種方法,如:</p><p>  <script language="Javascript"></p><p><b>  <!--</b>&l

52、t;/p><p>  document.writeln("這是Javascript!采用直接插入的方法!");</p><p>  //-Javascript結(jié)束--></p><p><b>  </script></b></p><p>  <script language=&

53、quot;Javascript”>用來告訴瀏覽器這是用JavaScript編寫的程序,需要調(diào)動(dòng)相應(yīng)的解釋程序進(jìn)行解釋。</p><p>  HTML的注釋標(biāo)簽<!--和-->,用來去掉瀏覽器所不能識(shí)別的JavaScript源代碼,這對(duì)于不支持Javascript語言的瀏覽器來說是很有用的。</p><p>  //-Javascript結(jié)束:雙斜杠表示JavaScript

54、的注釋部分,即從//開始到行尾的字符都被忽略。</p><p>  <script></script>的位置并不是固定的,可以包含在<head></head> 或<body></body>中的任何位置。</p><p><b> ?。?)引用方式</b></p><p> 

55、 若項(xiàng)目已經(jīng)有一個(gè)JavaScript源文件(以js為擴(kuò)展名),則可以采用這種引用的方式,以提高程序代碼的利用率。其格式如下:</p><p>  <script src=url language="Javascript"></script> </p><p>  其中url就是.js文件的地址。同樣,這樣的語句可以放在HTML文檔頭部或主體的

56、任何部分。如果要實(shí)現(xiàn)“直接插入方式”中的效果,可以首先創(chuàng)建一個(gè)JavaScript源代碼文件“script.js”,其內(nèi)容如下:document.writeln("這是Javascript!采用直接插入的方法!")。在網(wǎng)頁中可以這樣調(diào)用程序:</p><p>  <script src=”script.js” language=”Javascript”></script&g

57、t;</p><p>  2.2.3 MVC框架</p><p>  MVC是一種架構(gòu)設(shè)計(jì)模式,該模式主要應(yīng)用于圖形化用戶界面(GUI)應(yīng)用程序。MVC即Model-View-Controller由模型(Model)、視圖(View)、控制器(Controller)三部分組成,M代表業(yè)務(wù)邏輯,V代表視圖,C代表控制層。</p><p>  模型(Model)層:是企

58、業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則,它具有最多的處理任務(wù)。一個(gè)軟件實(shí)現(xiàn)了什么功能,它該如何實(shí)現(xiàn)功能,以及這些功能之間的聯(lián)系都是在模型層進(jìn)行處理的。模型層是一個(gè)軟件的核心,對(duì)于軟件功能的好壞、完善,業(yè)務(wù)層起到了決定性的作用。</p><p>  視圖(View)層:是用戶所能看到的并與之交互的界面。在J2EE技術(shù)中,常用的表示層技術(shù)主要由JSP、JSF。視圖向用戶顯示相關(guān)的數(shù)據(jù),并能接受用戶的輸入數(shù)據(jù),但是它不能進(jìn)行實(shí)際的業(yè)務(wù)處理。

59、視圖還可以接受模型發(fā)出來的數(shù)據(jù)更新事件,從而對(duì)用戶界面進(jìn)行同步更新。</p><p>  控制(Controller)層:接受用戶的輸入并調(diào)用模型和視圖去實(shí)現(xiàn)用戶的需求??刂茖雍苌僮雠c業(yè)務(wù)有關(guān)的事情,比如登錄驗(yàn)證。所以,在軟件的分層結(jié)構(gòu)設(shè)計(jì)中,控制層的代碼量幾乎是最少的,但它的作用也是非常重要的。</p><p>  MVC框架具有耦合性低、重用性高、生命周期成本低、部署快、可維護(hù)性高等特

60、點(diǎn)。視圖層和業(yè)務(wù)層分離,就允許更改視圖層的代碼而不需要重新編譯模型和控制器的代碼,同樣,一個(gè)應(yīng)用的業(yè)務(wù)流程或業(yè)務(wù)規(guī)則改變后就只需要改動(dòng)MVC模型層。因?yàn)槟P?、視圖和控制的分離,使得很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。MVC使得開發(fā)和維護(hù)用戶接口的技術(shù)含量降低。分離視圖層和業(yè)務(wù)層也使WEB應(yīng)用更易于維護(hù)和修改。模型層、視圖層、控制層三者之間的關(guān)系和各自的功能如圖2.2所示: </p><p>  圖2

61、.2 MVC模式關(guān)系和功能圖</p><p>  2.2.4 SSH框架</p><p>  SSH為Struts+Spring+Hibernate的一個(gè)集成框架,是目前比較流行的一種web應(yīng)用程序的開源框架。其中,Struts進(jìn)行流程控制,Spring進(jìn)行業(yè)務(wù)流轉(zhuǎn),Hibernate進(jìn)行數(shù)據(jù)庫操作的封裝。Struts的MVC設(shè)計(jì)模式使我們的邏輯變得很清晰,Spring的IOC和AOP使

62、我們的產(chǎn)品最大限度上解耦,Hibernate對(duì)實(shí)體對(duì)象持久化。</p><p>  典型的J2EE三層結(jié)構(gòu)為表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)服務(wù)層,三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問以及合法性校驗(yàn)等工作放在業(yè)務(wù)邏輯層處理。客戶端不直接與數(shù)據(jù)庫交互,而是通過組件與業(yè)務(wù)邏輯層建立連接,再由業(yè)務(wù)邏輯層與數(shù)據(jù)庫交互。表現(xiàn)層采用的是傳統(tǒng)的JSP技術(shù),業(yè)務(wù)邏輯層采用的是Spring+Hibernate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分

63、為:</p><p>  1)Action層(web層),即MVC模式中的controller,負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn),系統(tǒng)在這采用Struts。</p><p>  2)Service層,即業(yè)務(wù)邏輯層,負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯,業(yè)務(wù)邏輯以DAO層為基礎(chǔ),通過對(duì)DAO組件的模式包裝,完成系統(tǒng)要求的業(yè)務(wù)邏輯。</p><

64、;p>  3)DAO層,負(fù)責(zé)與持久化對(duì)橡交互,該層封裝了數(shù)據(jù)的增、刪、改、查的操作。</p><p>  4)Entity層,持久化對(duì)象,通過實(shí)體關(guān)系映射的工具將關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)映射成對(duì)象,方便的實(shí)現(xiàn)以面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫,系統(tǒng)在這采用Hibernate。Spring的作用貫穿整個(gè)業(yè)務(wù)邏輯層,將Action層、Service層、DAO層以及Entity層無縫整合,其數(shù)據(jù)服務(wù)層用來存放數(shù)據(jù)。</

65、p><p>  SSH框架中Struts、Spring、Hibernate的介紹:</p><p> ?。?)Struts </p><p>  Struts對(duì)Model、View和Controller都提供了對(duì)應(yīng)的組件。ActionServlet,這個(gè)類是Struts的核心控制器,負(fù)責(zé)攔截來自用戶的需求。Action,這個(gè)類由用戶提供,負(fù)責(zé)接收來自Actio

66、nServlet的請(qǐng)求,并根據(jù)該請(qǐng)求來調(diào)用模型的業(yè)務(wù)邏輯方法來處理請(qǐng)求,并將結(jié)果返回給JSP頁面顯示。</p><p><b>  Model部分</b></p><p>  由ActionForm和JavaBean組成,其中ActionForm用于將用戶的請(qǐng)求參數(shù)封裝成ActionForm對(duì)象,該對(duì)象被ActionServlet轉(zhuǎn)發(fā)給Action,Action根據(jù)A

67、ctionForm里面的請(qǐng)求參數(shù)處理用戶的請(qǐng)求。JavaBean則封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫訪問。</p><p><b>  View部分</b></p><p>  該部分采用JSP技術(shù)實(shí)現(xiàn)。Struts提供了豐富的標(biāo)簽庫,使用標(biāo)簽庫可以減少腳本的使用。</p><p>  Controller組件</p><p&

68、gt;  Controller組件有兩個(gè)部分組成:系統(tǒng)核心控制器、業(yè)務(wù)邏輯控制器。系統(tǒng)核心控制器,對(duì)應(yīng)ActionServlet,該控制器繼承了HttpServlet類,該控制器負(fù)責(zé)攔截所有的HTTP請(qǐng)求,然后根據(jù)用戶請(qǐng)求決定是否要傳給業(yè)務(wù)邏輯控制器。業(yè)務(wù)邏輯控制器,負(fù)責(zé)處理用戶請(qǐng)求,其本身不具備處理能力,而是調(diào)用Model來實(shí)現(xiàn)處理,對(duì)應(yīng)Action層。</p><p>  Struts配置文件的核心代碼:

69、 </p><p><b>  <struts></b></p><p>  <!-- 用戶配置 --></p><p>  <package name="user" namespace="/" extends="access"></p>

70、;<p>  <action name="userAction_*" method="{1}" class="cn.hr.hrmps.struts2.action.UserAction"></p><p>  <result name="userList">WEB-INF/user/list.j

71、sp</result></p><p>  <result name="user">WEB-INF/user/view.jsp</result></p><p>  <result name="toAdd">WEB-INF/user/add.jsp</result></p>&

72、lt;p>  <result name="toEdit">WEB-INF/user/edit.jsp</result></p><p><b>  </action></b></p><p>  </package></p><p>  </struts> &

73、lt;/p><p><b> ?。?)Spring</b></p><p>  Spring是一個(gè)開源框架,是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架,它是由Rod Johnson創(chuàng)建,它的創(chuàng)建是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性。Spring使用基本的JavaBean來完成以前只能有EJB完成的工作,并提供了更多的企業(yè)應(yīng)用功能,且Spring的用途不僅僅限

74、于服務(wù)器端的開發(fā)。Spring具有簡單性、可測試性和耦合性等特點(diǎn),任何Java應(yīng)用都可從中受益。</p><p>  控制反轉(zhuǎn)(Inversion of Control,縮寫IoC),也叫做依賴注入(DI),是一個(gè)重要的面向?qū)ο缶幊痰姆▌t,通過這種技術(shù)可以削減程序的耦合性,它也是輕量級(jí)的Spring框架的核心。應(yīng)用控制反轉(zhuǎn),對(duì)象在被創(chuàng)建的時(shí)候,由一個(gè)外界實(shí)體調(diào)控系統(tǒng)內(nèi)的所有對(duì)象,將其所依賴的對(duì)象的應(yīng)用,傳遞給它,

75、也可說是,依賴被注入到對(duì)象中。所以,控制反轉(zhuǎn)是關(guān)于一個(gè)對(duì)象如何獲取它所依賴對(duì)象的引用,這個(gè)責(zé)任的反轉(zhuǎn)。</p><p>  面向切面是Spring提供的面向切面編程的一種技術(shù),允許通過分離應(yīng)用的業(yè)務(wù)邏輯和系統(tǒng)服務(wù)(如事務(wù)管理(Transaction))進(jìn)行內(nèi)聚性的開發(fā)。</p><p>  Spring可以將簡單的組件配置、組合成復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象以聲明的方式被組合,典

76、型的是在一個(gè)XML文件中。Spring還提供了事務(wù)管理、持久化框架集成等基礎(chǔ)功能將應(yīng)用邏輯的開發(fā)留給了程序員。Spring的這些特征使程序員可以編寫更干凈、更可管理、且易于測試的代碼。</p><p>  SSH三層框架中Hibernate交由Spring管理,Spring配置文件的核心內(nèi)容:</p><p>  <!-- 定義事務(wù)管理器 --></p><

77、p>  <bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"></p><p>  <property name="dataSource" ref="dataSourc

78、e"></property></p><p><b>  </bean></b></p><p>  <!-- 定義事務(wù)通知 --></p><p>  <tx:advice id="txAdvice" transaction-manager="transa

79、ctionManager"></p><p>  <!-- 定義方法的過濾規(guī)則 --></p><p>  <tx:attributes></p><p>  <!-- 所有方法都使用事務(wù) --></p><p>  <tx:method name="save*"

80、propagation="REQUIRED" /></p><p>  <!-- 定義所有g(shù)et開頭的方法都是只讀的 --></p><p>  <tx:method name="delete*" propagation="REQUIRED" /></p><p>  <

81、!-- 所有方法都使用事務(wù) --></p><p>  <tx:method name="get*" propagation="REQUIRED" /></p><p>  <!-- 定義所有g(shù)et開頭的方法都是只讀的 --></p><p>  <tx:method name="

82、set*" propagation="REQUIRED" /></p><p>  </tx:attributes></p><p>  </tx:advice></p><p>  <bean id="UserInfoDAO" class="com.hr.dao.Use

83、rInfoDAO"></p><p>  <property name="sessionFactory"></p><p>  <ref bean="sessionFactory" /></p><p>  </property></p><p>&l

84、t;b>  </bean></b></p><p>  <bean id="UserInfoAction" class="com.hr.action.UserInfoAction"></p><p>  <property name="userinfodao"></p&g

85、t;<p>  <ref bean="UserInfoDAO" /></p><p>  </property></p><p><b>  </bean></b></p><p> ?。?)Hibernate</p><p>  Hibernate是

86、一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了輕量級(jí)的對(duì)象封裝,使得程序員能夠使用對(duì)象編程思維隨心所欲的來操縱數(shù)據(jù)庫。Hibernate可以應(yīng)用在使用JDBC的任何場合,既可以在Java客戶端使用,也可以在Servlet/JSP的WEB應(yīng)用中使用。Hibernate的核心接口共有五個(gè),分別是Session、SessionFactory、Transaction、Query、Configuration,這五個(gè)接口在任何開發(fā)中都會(huì)用到。

87、通過使用這些接口,可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面是對(duì)五個(gè)核心接口的介紹:</p><p>  1) Session接口:負(fù)責(zé)執(zhí)行被持久化對(duì)象的CRUD操作,CRUD操作是完成與數(shù)據(jù)庫的交流,包含了常見的SQL語句。Session對(duì)象是非線程安全的,且Hibernate的session不同于JSP應(yīng)用中的HttpSession。</p><p>  2) SessionF

88、actory接口:負(fù)責(zé)初始化Hibernate,它充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,并負(fù)責(zé)創(chuàng)建Session對(duì)象。這里用到了工廠模式,通常一個(gè)項(xiàng)目只需要一個(gè)SessionFactory,當(dāng)要操作多個(gè)數(shù)據(jù)庫時(shí),可為每個(gè)數(shù)據(jù)庫指定一個(gè)SessionFactory。</p><p>  3) Transaction接口:負(fù)責(zé)事務(wù)相關(guān)的操作,它是可選的,開發(fā)人員可以設(shè)計(jì)編寫自己的底層事務(wù)處理代碼。</p><p&

89、gt;  4) Query接口:負(fù)責(zé)執(zhí)行各種數(shù)據(jù)庫的查詢,它可以使用HQL語言和SQL語句兩種表達(dá)方式。</p><p>  5) Configuration接口:負(fù)責(zé)配置并啟動(dòng)Hibernate,創(chuàng)建SessionFactory對(duì)象。在Hibernate啟動(dòng)過程中,Configuration類的實(shí)例首先定位映射文檔的位置并讀取配置。然后創(chuàng)建SessionFactory對(duì)象。</p><p&g

90、t;  3. 系統(tǒng)需求分析</p><p><b>  3.1 需求描述</b></p><p>  當(dāng)前大量企業(yè)的員工的管理尚處于手工作業(yè)階段,不但效率低下,且常因?yàn)楣芾淼牟簧鞫霈F(xiàn)紕漏。傳統(tǒng)的依賴手工的方式記錄,效率較低,無法實(shí)現(xiàn)對(duì)數(shù)據(jù)的系統(tǒng)規(guī)范的管理,查詢困難、數(shù)據(jù)準(zhǔn)確性、安全性較差。為了滿足企業(yè)的需求,現(xiàn)設(shè)計(jì)一人力資源管理系統(tǒng),來對(duì)人力資源數(shù)據(jù)進(jìn)行管理,幫助

91、企業(yè)達(dá)到員工管理的辦公自動(dòng)化,節(jié)約管理成本,大幅度提高人力資源數(shù)據(jù)管理的效率。</p><p>  在國內(nèi),各個(gè)企業(yè)原有的手工管理方式現(xiàn)已不適應(yīng)形式的發(fā)展,為實(shí)現(xiàn)從靜態(tài)管理到動(dòng)態(tài)管理的轉(zhuǎn)變,樹立企業(yè)的新形象,必須應(yīng)用計(jì)算機(jī)來輔助管理,從而全面實(shí)行信息化管理,能夠?qū)T工的信息進(jìn)行動(dòng)態(tài)監(jiān)控,提升企業(yè)管理的檔次和水平。人力資源管理系統(tǒng)的建設(shè)是企業(yè)適應(yīng)市場形勢,新式管理的必由之路。</p><p>

92、;  3.1.1 系統(tǒng)界面設(shè)計(jì)及操作風(fēng)格的需求 </p><p>  安博人力資源管理系統(tǒng)頁面設(shè)計(jì)應(yīng)與企業(yè)的結(jié)構(gòu)、文化風(fēng)格保持一致,采用清新穩(wěn)重的暗灰色格局,以簡潔、明了的引導(dǎo)方式,相對(duì)統(tǒng)一的網(wǎng)站風(fēng)格和布局,突出網(wǎng)站的重點(diǎn);在網(wǎng)站設(shè)計(jì)實(shí)施風(fēng)格上堅(jiān)持美觀大方、莊重樸實(shí)的風(fēng)格,界面具有親和力,充分展示安博人力資源管理系統(tǒng)的風(fēng)采;切實(shí)把安博人力資源管理系統(tǒng)的門戶網(wǎng)站建設(shè)成為“公司形象展示的窗口、信息發(fā)布的載體、政務(wù)

93、信息公開的平臺(tái)、交流互動(dòng)的橋梁、公共服務(wù)的門戶”。</p><p>  “安博人力資源管理系統(tǒng)的門戶網(wǎng)站”在整個(gè)版面、欄目模塊布局、色彩、文字等方面的設(shè)計(jì),使之更美觀、簡潔、實(shí)用。</p><p>  易用性:操作界面與操作風(fēng)格盡可能與安博人力資源系統(tǒng)系統(tǒng)保持一致,使用風(fēng)格同樣的菜單及正文區(qū)設(shè)計(jì),菜單操作方式以及信息提示位置盡可能相同,以便于操作人員盡快熟悉本系統(tǒng)功能。</p>

94、<p>  3.1.2 系統(tǒng)功能描述</p><p>  基于SSH框架的人力資源管理系統(tǒng)主要包括:系統(tǒng)管理、檔案管理、合同管理三個(gè)子系統(tǒng)。系統(tǒng)管理子系統(tǒng)主要包括登錄、注冊(cè)、用戶的添加、刪除、修改、查詢,權(quán)限的添加、回收、查詢,角色的賦予、回收、查詢;檔案管理子系統(tǒng)主要包括檔案的建立、刪除、修改、查詢,物資報(bào)表打印,生日提醒;合同管理子系統(tǒng)主要包括合同的建立、刪除、查詢、修改,合同到期提醒。<

95、/p><p>  安博人力資源管理系統(tǒng)的系統(tǒng)角色分為4種:人力資源經(jīng)理、人力資源專員、信息錄入員、系統(tǒng)管理員(admin_role)。</p><p>  如圖3.1所示為安博人力資源管理平臺(tái)的系統(tǒng)管理子系統(tǒng)的用例圖,它反映了該子系統(tǒng)的設(shè)計(jì)應(yīng)該實(shí)現(xiàn)哪些功能。</p><p>  圖3.1 系統(tǒng)管理子系統(tǒng)的用例圖</p><p>  如圖3.2所示

96、為安博人力資源管理平臺(tái)的整個(gè)系統(tǒng)的實(shí)體類圖,它反映了系統(tǒng)的各實(shí)體之間的關(guān)聯(lián)和依賴關(guān)系。</p><p>  圖3.2 系統(tǒng)實(shí)體類圖</p><p>  3.1. 3 系統(tǒng)運(yùn)行環(huán)境</p><p><b> ?。?)硬件環(huán)境:</b></p><p>  CPU:Intel(R) Pentium(R) Dual T2390

97、 1.86GHz</p><p><b>  內(nèi)存:2 G</b></p><p><b>  硬盤:250G</b></p><p>  顯示:ATI 獨(dú)立顯卡</p><p><b>  (2) 軟件環(huán)境:</b></p><p>  操作系統(tǒng):Wi

98、ndows XP Professional SP3</p><p>  數(shù)據(jù)庫:SQL server 2005</p><p>  瀏覽器:Microsoft Internet Explorer</p><p>  相關(guān)應(yīng)用軟件: Tomcat 6.0,Dreamweaver8、Power Designer15.1、Rational Rose</p>

99、<p>  開發(fā)平臺(tái):MyEclipse 8.5</p><p>  3.2 系統(tǒng)的一般性規(guī)定</p><p>  3.2.1 對(duì)性能的規(guī)定</p><p>  (1)安全性:系統(tǒng)應(yīng)該具有較強(qiáng)的安全性,對(duì)數(shù)據(jù)和相關(guān)的信息有較強(qiáng)的保護(hù)性。</p><p>  (2)穩(wěn)定性:系統(tǒng)應(yīng)該在一定環(huán)境下穩(wěn)定運(yùn)行。</p><

100、;p>  (3)兼容性:系統(tǒng)能夠與其它軟硬件有良好的兼容性</p><p>  (4)實(shí)用性:考慮到要盡量滿足業(yè)務(wù)功能需求的前提下,又要適應(yīng)各業(yè)務(wù)角色的工作特點(diǎn),該系統(tǒng)做到簡單、實(shí)用、人性化,實(shí)現(xiàn)了統(tǒng)一身份和人力資源管理、統(tǒng)一內(nèi)容管理、個(gè)性化界面和內(nèi)容定制。</p><p> ?。?) 可維護(hù)性:系統(tǒng)設(shè)計(jì)應(yīng)標(biāo)準(zhǔn)化、規(guī)范化,按照分層設(shè)計(jì),軟件構(gòu)件化實(shí)現(xiàn)。一是使業(yè)務(wù)與實(shí)現(xiàn)分離,邏輯與數(shù)據(jù)

101、分離;二是以統(tǒng)一的服務(wù)接口規(guī)范為核心,使用開放標(biāo)準(zhǔn);三是構(gòu)件語意描述形式化;四是提煉封裝構(gòu)件規(guī)范化。</p><p> ?。?)可擴(kuò)展性:考慮到網(wǎng)上業(yè)務(wù)建設(shè)是一個(gè)循序漸進(jìn)、不斷擴(kuò)充的過程,本期項(xiàng)目建設(shè)將搭建底層框架基礎(chǔ),以便于未來采用積木式結(jié)構(gòu),整體構(gòu)架可以與原有系統(tǒng)進(jìn)行無縫連接,為今后系統(tǒng)擴(kuò)展和集成留有擴(kuò)充余量。</p><p> ?。?)可移植性:選擇開放的應(yīng)用平臺(tái),建設(shè)一套與平臺(tái)無關(guān)

102、,以統(tǒng)一的服務(wù)接口規(guī)范和與各種數(shù)據(jù)庫相連的應(yīng)用組件。</p><p>  3.2.2 對(duì)時(shí)間特性的規(guī)定 </p><p>  人力資源管理系統(tǒng)的查詢時(shí)間取決于服務(wù)器和Web瀏覽器之間的連接寬帶以及同時(shí)訪問系統(tǒng)的客戶端的數(shù)量,系統(tǒng)的實(shí)現(xiàn)應(yīng)以快速響應(yīng)管理人員的請(qǐng)求為優(yōu)先目標(biāo)。</p><p>  3.2.3 輸入輸出要求</p><p>  輸入

103、---用戶通過WEB頁面將各種用戶信息數(shù)據(jù)輸入,導(dǎo)入數(shù)據(jù)或者提交查詢、修改、刪除請(qǐng)求,系統(tǒng)將數(shù)據(jù)的存儲(chǔ)格式為數(shù)據(jù)庫專用格式。</p><p>  輸出---系統(tǒng)通過調(diào)用數(shù)據(jù)庫的信息將結(jié)果數(shù)據(jù)顯示在Web瀏覽器的HTML頁面上,并能夠根據(jù)業(yè)務(wù)的需要生成指定的報(bào)表或數(shù)據(jù)的匯總統(tǒng)計(jì)結(jié)過以及進(jìn)行打印工作。</p><p>  3.2.4 數(shù)據(jù)管理能力要求</p><p> 

104、?。?)相應(yīng)的數(shù)據(jù)訪問控制措施</p><p>  (2) 登錄時(shí)用戶的身份鑒別與權(quán)限控制</p><p> ?。?)數(shù)據(jù)的完整性保護(hù)措施。</p><p>  3.2.5 網(wǎng)絡(luò)安全要求 </p><p> ?。?)通過設(shè)置安全級(jí)別權(quán)限來增強(qiáng)系統(tǒng)的安全性。</p><p> ?。?)通過設(shè)置用戶密碼的復(fù)雜程度,來增強(qiáng)系

105、統(tǒng)的安全;若密碼被盜,應(yīng)快速告知管理員注銷該用戶。</p><p>  (3)對(duì)來自內(nèi)部的攻擊則抵御的能力不強(qiáng),只能關(guān)閉服務(wù)器。</p><p>  4. 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  4.1 系統(tǒng)層次劃分</p><p>  在該系統(tǒng)中,系統(tǒng)共分為5層,分別為表現(xiàn)層、控制層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層、數(shù)據(jù)層,如圖4.1所示。<

106、/p><p>  圖4.1 系統(tǒng)層次劃分圖</p><p>  在表現(xiàn)層中,系統(tǒng)主要采用了JSP技術(shù),將Action傳遞過來的數(shù)據(jù)封裝在ActionForm對(duì)象中,該對(duì)象被ActionServlet轉(zhuǎn)發(fā)給Action,Action根據(jù)ActionForm里面的請(qǐng)求參數(shù)來處理用戶的請(qǐng)求,進(jìn)行一定的處理之后,再反饋給前臺(tái)頁面。</p><p>  控制層的作用主要是控制協(xié)調(diào)

107、系統(tǒng)中各模塊的執(zhí)行流程,在控制層中,Struts中的核心控制器ActionServlet控制系統(tǒng)流程轉(zhuǎn)向。</p><p>  業(yè)務(wù)邏輯層,主要采用Javabean,來實(shí)現(xiàn)對(duì)具體系統(tǒng)的業(yè)務(wù)邏輯處理。</p><p>  數(shù)據(jù)訪問層,主要是采用Hibernate持久化方案,通過Hibernate來對(duì)數(shù)據(jù)層進(jìn)行封裝操作,這樣了方便于在不同的數(shù)據(jù)庫系統(tǒng)間移植。Hibernate對(duì)數(shù)據(jù)的持久化操作

108、實(shí)現(xiàn)了以面向?qū)ο蟮乃枷雭聿僮鲾?shù)據(jù)庫。</p><p>  數(shù)據(jù)層存放系統(tǒng)中的數(shù)據(jù),本系統(tǒng)采用MySQL數(shù)據(jù)庫。</p><p>  4.2 數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  數(shù)據(jù)庫是存放數(shù)據(jù)的倉庫,也即是數(shù)據(jù)按照一定的規(guī)律存放在計(jì)算機(jī)中,它是信息系統(tǒng)的核心和基礎(chǔ),是信息系統(tǒng)開發(fā)和建設(shè)的重要組成部分,把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來,提供存儲(chǔ)、維護(hù)、檢

109、索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時(shí)、準(zhǔn)確地從數(shù)據(jù)庫中獲得所需的信息。數(shù)據(jù)庫的設(shè)計(jì)是信息資源管理最有效的手段,數(shù)據(jù)庫設(shè)計(jì)就是根據(jù)具體的應(yīng)用環(huán)境,構(gòu)造合理數(shù)據(jù)庫模式,建立數(shù)據(jù)庫的邏輯結(jié)構(gòu),有效存儲(chǔ)數(shù)據(jù),滿足用戶實(shí)際需求和系統(tǒng)應(yīng)用處理要求。在動(dòng)態(tài)網(wǎng)站設(shè)計(jì)中數(shù)據(jù)庫的重要性不言而喻。合理地設(shè)計(jì)數(shù)據(jù)庫結(jié)構(gòu)可以提高系統(tǒng)運(yùn)行的效率。如果設(shè)計(jì)不當(dāng),查詢起來就非常吃力,系統(tǒng)的性能也會(huì)受到影響。</p><p>  數(shù)據(jù)庫設(shè)計(jì)實(shí)際

110、上就是對(duì)項(xiàng)目設(shè)計(jì)的一個(gè)整體規(guī)劃,因?yàn)閿?shù)據(jù)庫的設(shè)計(jì)要從全局的角度考慮,而且數(shù)據(jù)庫中表的結(jié)構(gòu)都是與程序緊密相關(guān)的,如果數(shù)據(jù)庫設(shè)計(jì)如果沒有到位,程序的設(shè)計(jì)也會(huì)受到一定的影響。</p><p>  數(shù)據(jù)庫的設(shè)計(jì)一般主要包括兩個(gè)部分:</p><p> ?。?)對(duì)具體的網(wǎng)站系統(tǒng)的設(shè)計(jì)進(jìn)行需求分析,確定需在數(shù)據(jù)庫中保存的信息。</p><p> ?。?)確定每個(gè)表的字段屬性。&

111、lt;/p><p>  本系統(tǒng)采用的是MySQL數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名為hrmps,根據(jù)系統(tǒng)的設(shè)計(jì)和業(yè)務(wù)邏輯的分析,數(shù)據(jù)庫HRMP中包括12個(gè)數(shù)據(jù)表。</p><p>  本系統(tǒng)所用的數(shù)據(jù)庫表有:</p><p> ?。?)user用戶表</p><p>  (2)role角色表</p><p> ?。?)privilege

112、權(quán)限表</p><p> ?。?)user_role賦予角色表</p><p> ?。?)role_privilege賦予權(quán)限表</p><p> ?。?)archive檔案表</p><p> ?。?)work工作經(jīng)歷表</p><p>  (8)family家庭關(guān)系表</p><p> ?。?/p>

113、9)study學(xué)習(xí)經(jīng)歷表</p><p> ?。?0)contract合同表</p><p> ?。?1)application應(yīng)聘信息表</p><p> ?。?2)unit單位表</p><p>  表4.1 user(用戶)表</p><p>  說明,該表用于保存使用該系統(tǒng)的用戶信息</p>&l

114、t;p>  表4.2 role(角色)表</p><p>  說明,該表用于定義該系統(tǒng)的系統(tǒng)角色</p><p>  表4.3 privilege(權(quán)限)表</p><p>  說明,該表用于定義系統(tǒng)中不同角色所具有的權(quán)限信息</p><p>  表4.4 user_role(賦予角色)表</p><p>  說

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論