JSP企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
JSP企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
JSP企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
JSP企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
JSP企業(yè)員工管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、. . . . 引 言現(xiàn)在網(wǎng)絡(luò)的發(fā)展已呈現(xiàn)商業(yè)化、全民化、全球化的趨勢(shì)。目前,幾乎世界上所有的公司都在利用網(wǎng)絡(luò)傳遞商業(yè)信息,進(jìn)行商業(yè)活動(dòng),從宣傳企業(yè)、發(fā)布廣告、招聘雇員、傳遞商業(yè)文件乃至拓展市場(chǎng)、網(wǎng)上銷(xiāo)售等,無(wú)所不能。如今網(wǎng)絡(luò)已成為企業(yè)進(jìn)行競(jìng)爭(zhēng)的戰(zhàn)略手段。企業(yè)經(jīng)營(yíng)的多元化拓展,企業(yè)規(guī)模的進(jìn)一步擴(kuò)大,對(duì)于企業(yè)的管理、業(yè)務(wù)擴(kuò)展、企業(yè)品牌形象等提供了更高的要求。在以信息技術(shù)為支撐的新經(jīng)濟(jì)條件下,越來(lái)越多的企業(yè)利用起網(wǎng)絡(luò)這個(gè)有效的工具。全球圍的企業(yè)部組織正在發(fā)生巨變,未來(lái)企業(yè)成功的關(guān)鍵的依靠企業(yè)人力資源,人才之爭(zhēng)已經(jīng)成為市場(chǎng)競(jìng)爭(zhēng)中的核心容之一,以人為本成為企業(yè)立足和發(fā)展的根本。有效力管理企業(yè)的人力資源

2、,為企業(yè)提供強(qiáng)有力的儲(chǔ)備力量,使之成為企業(yè)發(fā)展的主動(dòng)力。通過(guò)人力資源的有效管理,掌握最新的、準(zhǔn)確的企業(yè)人力資源信息,并對(duì)其進(jìn)行復(fù)雜的統(tǒng)計(jì)與分析,從而充分發(fā)揮每個(gè)員工的潛能,為企業(yè)創(chuàng)造更大的價(jià)值。目 錄摘 要1引 言31、系統(tǒng)分析31.1 需求分析31.2 可行性分析31.2.1 經(jīng)濟(jì)性31.2.2 技術(shù)性31.2.3 操作可行性41.2.4 系統(tǒng)結(jié)構(gòu)可行性分析42、總體設(shè)計(jì)42.1 項(xiàng)目規(guī)劃42.2 設(shè)計(jì)目標(biāo)42.3 系統(tǒng)功能結(jié)構(gòu)圖52.4 開(kāi)發(fā)與運(yùn)行環(huán)境53、系統(tǒng)功能設(shè)計(jì)63.1 模塊功能介紹63.2 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)63.2.1 數(shù)據(jù)庫(kù)的需求分析63.2.2 數(shù)據(jù)庫(kù)各表具體設(shè)計(jì)63.2.3

3、 數(shù)據(jù)庫(kù)連接與訪問(wèn)83.3 系統(tǒng)中的JavaBean結(jié)構(gòu)93.4 公共模塊94、系統(tǒng)實(shí)現(xiàn)104.1 登錄模塊104.1.1 實(shí)現(xiàn)效果104.1.2 相關(guān)JavaBean程序114.1.3 相關(guān)JSP文件114.2 主頁(yè)面模塊124.2.1實(shí)現(xiàn)效果124.2.2 主頁(yè)面相關(guān)JSP文件124.3 人員檔案模塊134.3.1實(shí)現(xiàn)效果144.3.2相關(guān)JavaBean程序164.3.3 相關(guān)JSP文件164.4 獎(jiǎng)懲管理模塊164.4.1 實(shí)現(xiàn)效果174.4.3 相關(guān)JSP文件184.5 獎(jiǎng)懲管理模塊184.5.1 實(shí)現(xiàn)效果194.5.2 相關(guān)JavaBean程序204.5.3 相關(guān)JSP文件204.

4、6 企業(yè)員工管理系統(tǒng)文件結(jié)構(gòu)圖214.7 技術(shù)難點(diǎn)214.7.1 中文亂碼問(wèn)題214.7.2 安全性問(wèn)題214.7.3 JavaScript的實(shí)現(xiàn)225、系統(tǒng)測(cè)試225.1 測(cè)試的定義與目的225.2 測(cè)試的原則225.3 測(cè)試的方法225.3.1 界面測(cè)試225.3.2 功能測(cè)試235.3.3 需求測(cè)試235.3.4 性能測(cè)試235.4 測(cè)試中其他要注意的地方235.5 人力資源管理系統(tǒng)的測(cè)試246、總結(jié)24摘 要隨著計(jì)算機(jī)的普與和計(jì)算機(jī)科學(xué)技術(shù)的飛速發(fā)展,人們開(kāi)始越來(lái)越多地利用計(jì)算機(jī)解決實(shí)際問(wèn)題。員工信息管理是企業(yè)信息管理的重要部分,面對(duì)大量的人事信息,采用人力處理即浪費(fèi)時(shí)間、又浪費(fèi)人力和

5、物力,并且數(shù)據(jù)的準(zhǔn)確性低。因此,開(kāi)發(fā)一個(gè)界面友好,易于操作的員工信息管理軟件進(jìn)行自動(dòng)化處理變得十分重要,這正是本系統(tǒng)開(kāi)發(fā)的目的和意義。本文所闡述的企業(yè)員工管理系統(tǒng),以 B/C 模式高效地實(shí)現(xiàn)了員工信息管理系統(tǒng)的各項(xiàng)功能,可進(jìn)行多條件查詢(xún)、更新、密碼設(shè)置等功能.提升了企業(yè)的效率和競(jìng)爭(zhēng)力,滿足了現(xiàn)代企業(yè)管理的需要. JSP繼承了所有Java語(yǔ)言的特點(diǎn),而且發(fā)展前景十分的廣闊,因此本項(xiàng)目使用用JSP語(yǔ)言作為根本,選用經(jīng)典的Tomcat作為服務(wù)器平臺(tái),并用Eclipse作為開(kāi)發(fā)平臺(tái),詳細(xì)介紹了本管理系統(tǒng)的開(kāi)發(fā)過(guò)程。并從系統(tǒng)的需求分析、系統(tǒng)分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)的整個(gè)開(kāi)發(fā)過(guò)程。關(guān)鍵詞 企業(yè)員工、管理系

6、統(tǒng)、JSP、數(shù)據(jù)庫(kù)。1、系統(tǒng)分析1.1 需求分析通過(guò)調(diào)查,根據(jù)人事管理的基本需求,要求系統(tǒng)需要完成以下功能; 用戶(hù)管理模塊;員工基本信息管理模塊;員工異動(dòng)信息管理模塊;繼續(xù)教育管理模塊模塊;員工獎(jiǎng)懲信息管理模塊;科研論文管理模塊模塊;人力資源發(fā)布管理模塊;1.2 可行性分析1.2.1 經(jīng)濟(jì)性通過(guò)網(wǎng)絡(luò)化的員工信息管理,大大的提高了企業(yè)人才的利用率,使之為企業(yè)創(chuàng)造了更大價(jià)值。人才利用率的提高,增強(qiáng)了企業(yè)的核心竟?fàn)幜?,全面提升了企業(yè)的管理能力,從而企業(yè)適應(yīng)了信息時(shí)代的網(wǎng)絡(luò)化管理要求。1.2.2 技術(shù)性通過(guò)網(wǎng)絡(luò)化管理,加強(qiáng)和員工信息管理的方便性,準(zhǔn)備確性。使用JSP技術(shù),Web頁(yè)面開(kāi)發(fā)人員可以使用HT

7、ML或者XML標(biāo)識(shí)來(lái)設(shè)計(jì)和格式化最終頁(yè)面。使用JSP標(biāo)識(shí)或者小腳本來(lái)生成頁(yè)面上的動(dòng)態(tài)容.生成的容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,那么其他人,如Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面而不影響容的生成。很多的OS中都帶有JDBC驅(qū)動(dòng)程序,ava就通過(guò)JDBC與數(shù)據(jù)庫(kù)連接,執(zhí)行查詢(xún),提取數(shù)據(jù)等操作.Sun公司還提供了JDBC-ODBC的橋連方式,因此Java也可以訪問(wèn)帶有ODBC驅(qū)動(dòng)的數(shù)據(jù)庫(kù),目前大多數(shù)數(shù)據(jù)庫(kù)系統(tǒng)都帶有ODBC驅(qū)動(dòng),所以Java能訪問(wèn)諸如Oracle,Sybase,MS SQL Server 和PostgresSQL等類(lèi)型的數(shù)據(jù)庫(kù)。1.2.3 操作可行性

8、對(duì)于用戶(hù)來(lái)說(shuō),本系統(tǒng)只要求使用者掌握一定的上網(wǎng)經(jīng)驗(yàn),經(jīng)過(guò)仔細(xì)設(shè)計(jì)和測(cè)試之后的系統(tǒng)具有操作簡(jiǎn)單,方便靈活等優(yōu)點(diǎn),足可以滿足各種用戶(hù)的不同需求,同時(shí)也方便了公司的部管理。管理人員與用戶(hù)一定會(huì)在短時(shí)間掌握并熟練使用。只要?jiǎng)右粍?dòng)鼠標(biāo)鍵盤(pán)就可以達(dá)到想要的效果。1.2.4 系統(tǒng)結(jié)構(gòu)可行性分析本系統(tǒng)初步計(jì)劃是用使用JSPweb框架。也就是Struts2。Struts2是一個(gè)web應(yīng)用框架。它不是一個(gè)Struts的新的發(fā)布版本,而是一個(gè)全新的框架。Struts2 是第二代基于Model-View-Controller (MVC)模型的web應(yīng)用框架。 Struts2是java企業(yè)級(jí)web應(yīng)用的可擴(kuò)展性的框架。

9、 它是WebWork和Struts社區(qū)合并后的產(chǎn)物。 這一版本的Struts2聲稱(chēng),Struts2會(huì)接近于原先版本Struts,并且會(huì)更容易使用。Struts2沒(méi)有繼承struts 1的血統(tǒng),而是繼承了webwork 的血統(tǒng)。Struts是一個(gè)基于Sun J2EE平臺(tái)的MVC框架,主要是采用Servlet和JSP技術(shù)來(lái)實(shí)現(xiàn)的。由于Struts能充分滿足應(yīng)用開(kāi)發(fā)的需求,簡(jiǎn)單易用,敏捷迅速,在過(guò)去的一年中頗受關(guān)注。Struts把Servlet、JSP、自定義標(biāo)簽和信息資源(message resources)整合到一個(gè)統(tǒng)一的框架中,開(kāi)發(fā)人員利用其進(jìn)行開(kāi)發(fā)時(shí)不用再自己編碼實(shí)現(xiàn)全套MVC模式,極大的節(jié)

10、省了時(shí)間,所以說(shuō)Struts是一個(gè)非常不錯(cuò)的應(yīng)用框架。2、總體設(shè)計(jì)2.1 項(xiàng)目規(guī)劃企業(yè)員工管理系統(tǒng)由人員信息管理、獎(jiǎng)懲信息管理、人員調(diào)動(dòng)信息管理、系統(tǒng)用戶(hù)管理4個(gè)部分組成,規(guī)劃系統(tǒng)功能模塊如下:用戶(hù)管理模塊:用戶(hù)管理、登陸、注冊(cè)、授權(quán)與錯(cuò)誤報(bào)告。員工基本信息管理模塊:該模塊主要功能是對(duì)員工基本信息、家庭成員信息、部門(mén)信息等進(jìn)行管理。員工異動(dòng)信息管理模塊:管理員工的離職、開(kāi)除、停職等信息。繼續(xù)教育管理模塊:管理員工的培訓(xùn)信息。員工獎(jiǎng)懲信息管理模塊:記錄員工的獎(jiǎng)勵(lì)懲處情況等信息??蒲姓撐墓芾砟K:管理員工發(fā)表的科研論文、報(bào)刊文章的信息。人力資源發(fā)布管理模塊:管理公司的人才需求規(guī)劃和招聘信息。 2.

11、2 設(shè)計(jì)目標(biāo)本系統(tǒng)主要用于對(duì)企業(yè)中的員工進(jìn)行管理。具體地講,員工管理系統(tǒng)就是通過(guò)員工信息、員工家庭信息、獎(jiǎng)懲管理、員工培訓(xùn)、員工調(diào)動(dòng)信息管理、人才信息管理等一系列手段來(lái)提高勞動(dòng)生產(chǎn)率,最終達(dá)到發(fā)展目標(biāo)的一種管理行為。具體實(shí)現(xiàn)目標(biāo)如下:實(shí)現(xiàn)對(duì)員工信息進(jìn)行全面管理的功能。系統(tǒng)用戶(hù)信息的管理。企業(yè)員工獎(jiǎng)懲信息管理;企業(yè)員工人員調(diào)動(dòng)信息管理;公司人才需求的管理信息。系統(tǒng)最大限度地實(shí)現(xiàn)了易安裝性、易維護(hù)性和易操作性。系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。2.3 系統(tǒng)功能結(jié)構(gòu)圖登陸人力資源管理系統(tǒng)功能結(jié)構(gòu)如圖1所示。企業(yè)員工管理系統(tǒng)用戶(hù)管理模塊人才管理模塊人員檔案模塊塊獎(jiǎng)懲管理模塊管理人員檔案添加人員檔案查詢(xún)?nèi)藛T檔案人

12、員調(diào)動(dòng)模塊管理獎(jiǎng)懲記錄添加獎(jiǎng)懲記錄添加人員調(diào)動(dòng)管理人員調(diào)動(dòng)注冊(cè)圖1 企業(yè)員工管理系統(tǒng)功能結(jié)構(gòu)圖2.4 開(kāi)發(fā)與運(yùn)行環(huán)境硬件平臺(tái):筆記本電腦一臺(tái)。軟件平臺(tái):操作系統(tǒng):Windows XP/Windows 2000;數(shù)據(jù)庫(kù):Postgres SQL 8.2;開(kāi)發(fā)工具包:JDK Version1.4.2 與以上版本;JSP服務(wù)器:Tomcat 4.1 與以上版本; 3、系統(tǒng)功能設(shè)計(jì)3.1 模塊功能介紹1、 登錄模塊此模塊實(shí)現(xiàn)用戶(hù)進(jìn)入系統(tǒng)管理前的驗(yàn)證操作,只有輸入正確的用戶(hù)名和密碼才能進(jìn)入系統(tǒng) ,進(jìn)行各種操作。普通用戶(hù)還可以注冊(cè),由后臺(tái)授權(quán)管理進(jìn)入系統(tǒng)查詢(xún)信息,但是不能對(duì)系統(tǒng)進(jìn)行操作。2、 員工信息管理

13、模塊此模塊實(shí)現(xiàn)對(duì)企業(yè)所有員工、家庭、部門(mén)的檔案進(jìn)行管理,并且根據(jù)需要,可以對(duì)檔案進(jìn)行修改、刪除和查詢(xún)。3、 獎(jiǎng)懲管理模塊本模塊提供了記錄獎(jiǎng)懲類(lèi)別,容,原因等獎(jiǎng)懲信息的管理。可以根據(jù)需要添加獎(jiǎng)懲詳細(xì)信息、刪除獎(jiǎng)懲詳細(xì)信息、修改獎(jiǎng)懲詳細(xì)信息。4、 人員調(diào)動(dòng)模塊本模塊提供了管理企業(yè)人員調(diào)動(dòng)信息管理的功能,可以根據(jù)需要,對(duì)某條調(diào)動(dòng)記錄進(jìn)行修改和刪除。5.工作移動(dòng)管理模塊 管理員工的工作調(diào)動(dòng)、停職、開(kāi)除等,可以對(duì)其進(jìn)行、增加、修改、刪除。6.繼續(xù)教育管理模塊 管理員工的培訓(xùn),可以根據(jù)公司的相關(guān)變動(dòng),來(lái)調(diào)整模塊的相關(guān)容,對(duì)其進(jìn)行增加、修改、刪除、查詢(xún)。7.人才需求信息管理模塊本模塊提供了公司的招聘信息和招

14、聘需求??梢詫?duì)其中的信息進(jìn)行增加、修改、查詢(xún)、刪除。3.2 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)3.2.1 數(shù)據(jù)庫(kù)的需求分析依據(jù)項(xiàng)目的處理需求,對(duì)應(yīng)數(shù)據(jù)表的設(shè)計(jì)與功能如下: .用戶(hù)管理表: 主要用于保存用戶(hù)信息 員工基本信息表: 主要用于保存員工信息獎(jiǎng)懲管理信息表: 主要用于保存獎(jiǎng)懲信息工作調(diào)動(dòng)管理信息表: 主要用于保存部人員調(diào)動(dòng)信息.員工繼續(xù)教育管理信息表:主要用于保存培訓(xùn)信息.科研論文信息表:主要用于對(duì)員工所發(fā)表的科研論文和文章信息3.2.2 數(shù)據(jù)庫(kù)各表具體設(shè)計(jì)表3.2.1 員工基本信息表(employee)名稱(chēng)字段名類(lèi)型長(zhǎng)度主鍵非空員工編號(hào)EmployeeIDvarchar6yesyesUserNameva

15、rchar20noyes性別Sexvarchar10noyes部門(mén)Branchvarchar40noyes出生日期Birthdaydatenoyes籍貫NativePlacevarchar20noyes婚姻Marriagevarchar20noyes號(hào)IdentityIDvarchar18noyes政漢面貌Politicsvarchar20noyes民族Folkvarchar20noyes學(xué)歷Educationvarchar20nono專(zhuān)業(yè)Departmentvarchar40nono畢業(yè)時(shí)間GraduateDatedatenono畢業(yè)院校Universityvarchar40nono行政級(jí)別

16、AdministrationLevelvarchar20noyes職務(wù)Dutyvarchar40noyes職稱(chēng)Position varchar20noyes外語(yǔ)語(yǔ)種ForeignLanguage varchar20nono外語(yǔ)等級(jí)FLLevelvarchar20nono家庭Phonevarchar20nono手機(jī)MobilePhonevarchar11nono家庭住址Addressvarchar50nono表3.2.2 獎(jiǎng)懲管理信息表(rpmanage)名稱(chēng)字段名類(lèi)型長(zhǎng)度主鍵非空記錄編號(hào)RewardNOintyesyes員工編號(hào)EmployeeIDvarchar6noyes職稱(chēng)Position

17、varchar20noyes獎(jiǎng)/懲RewardPunishvarchar10noyes獎(jiǎng)懲容Rewardcontentvarchar50noyes原因Reasonvarchar100noyes批準(zhǔn)部門(mén)Branchvarchar40noyes審核人HandleNamevarchar20noyes開(kāi)始時(shí)間StartDatedatenoyes撤銷(xiāo)時(shí)間CancelDatedatenono撤銷(xiāo)原因CancelReasonvarchar100nono備注Remarkvarchar400nono表3.2.3 系統(tǒng)用戶(hù)管理表(users)名稱(chēng)字段名類(lèi)型長(zhǎng)度主鍵非空用戶(hù)名UserNamevarchar16yes

18、yes密碼Passwordvarchar16noyes表3.2.4 人事調(diào)動(dòng)管理信息表(translate)名稱(chēng)字段名類(lèi)型長(zhǎng)度主鍵非空記錄編號(hào)TranslateNOintyesyes員工編號(hào)EmployeeIDvarchar6noyes調(diào)動(dòng)時(shí)間TranslateDatedatenoyes前部門(mén)PriorBranchvarchar40noyes現(xiàn)部門(mén)NextBranchvarchar40noyes前職務(wù)PriorDutyvarchar40noyes現(xiàn)職務(wù)NextDutyvarchar40noyes經(jīng)辦人HandleNamevarchar20noyes備注Remarkvarchar400nono3

19、.3 系統(tǒng)中的JavaBean結(jié)構(gòu)JavaBean的工作原理是將數(shù)據(jù)的基本處理邏輯封閉在JavaBean中,然后通過(guò)其提供的方法對(duì)其進(jìn)行調(diào)用,最大的優(yōu)點(diǎn)是可以實(shí)現(xiàn)代碼的重復(fù)利用。本系統(tǒng)的JavaBean的目錄和包的結(jié)構(gòu)如圖2所示。staff.databasestaffstaff.utilstaff.userestaff.employeeestaff.actioneeeDataConvert.javaeeeDBConnect.javaeUser.javaeEmployee.javaeeeTranslate.javaeeeReward.javaeee圖2 管理系統(tǒng)的JavaBean結(jié)構(gòu)圖公共模塊導(dǎo)

20、入類(lèi)包文件頁(yè)面頭和尾文件JavaScript文件防止非正常登錄CSS樣式表Common.jspStyle.cssCalendar-win2k-1.cssHeader.jspFooter.jspCalensdar.jsCalendar-en.jsCalendar-setup.jsCheck.jsp圖3 公共模塊結(jié)構(gòu)圖3.4 公共模塊本系統(tǒng)的公共模塊如圖3所示,其容都是由許多頁(yè)面共同擁有的,其中包含JavaScript文件,JSP文件,和CSS樣式表。4、系統(tǒng)實(shí)現(xiàn)4.1 登錄模塊登錄模塊用來(lái)難用戶(hù)的合法性,防止非法用戶(hù)進(jìn)入員工管理系統(tǒng),其結(jié)構(gòu)如圖4所示:登錄模塊驗(yàn)證用戶(hù)ChkLogin.jsp登錄

21、界面login.jsp圖4 登錄模塊結(jié)構(gòu)圖如果用戶(hù)沒(méi)有輸入用戶(hù)名或者密碼,而單擊登錄按鈕,系統(tǒng)會(huì)彈出對(duì)話框提示用戶(hù)如圖6所示。輸入用戶(hù)名和密碼后,系統(tǒng)會(huì)判斷輸入的用戶(hù)信息。如信息錯(cuò)誤,剛會(huì)給出提示信息“用戶(hù)名或密碼不正確”如圖7所示。4.1.2 相關(guān)JavaBean程序主要定義了類(lèi)User.java,其主要代碼摘錄如下:public static boolean ChkLogin(String _UserName, String _Password) throws Exception /該方法用于判斷指定的用戶(hù)是否存在,如果存在剛返回Ture如果不存在則返回FalseDBConnect dbc

22、 = null;boolean IsExist = false;try dbc = new DBConnect();Connection conn =dbc.getDBConnection();Statement stmt = null;stmt=conn.createStatement();ResultSet rs = null;rs = stmt.executeQuery(SELECT Password FROM Users WHERE Username =+_UserName+);if (!rs.next() IsExist = false;else if (_Password.equa

23、ls(rs.getString(Password)IsExist = true; catch (Exception e)System.err.println(e);return IsExist;public static String ModifyPassword(String _UserName, String _NewPassword) /該方法用于實(shí)現(xiàn)修改密碼的功能DBConnect dbc = null;try dbc = new DBConnect();Connection conn =dbc.getDBConnection();Statement stmt = null;stmt=

24、conn.createStatement();stmt.executeUpdate(UPDATE users SET Password=+_NewPassword+ WHERE username=+_UserName+);dbc.close();return 1;catch (Exception e) e.printStackTrace();return e.toString();4.1.3 相關(guān)JSP文件本模塊主要涉與到兩個(gè)頁(yè)面:login.jsp和ChkLogin.jsp,下面是其關(guān)鍵代碼:ChkLogin.jsp4.2 主頁(yè)面模塊4.2.1實(shí)現(xiàn)效果主頁(yè)面是用戶(hù)通過(guò)身分難后進(jìn)入的頁(yè)面,也是

25、操作員工信息管理系統(tǒng)各功能的平臺(tái),可以在該模塊中管理人員檔案,獎(jiǎng)懲,人員調(diào)支等,其結(jié)構(gòu)如圖8所示:主頁(yè)面模塊退出系統(tǒng)Logout.jsp主頁(yè) index.jsp修改密碼ModifyPasswordStep1.jspModifyPasswordStep2.jsp頁(yè)面左部Left.jsp圖8 主面面模塊結(jié)構(gòu)圖4.2.2 主頁(yè)面相關(guān)JSP文件相關(guān)的JSP文件主要有:index.jsp,Logout.jsp ,Header.jsp,Footer.jsp,ModifyPasswordStep1.jsp, ModifyPasswordStep2.jsp。其中修改密碼的關(guān)鍵代碼如下:%tryString u

26、sername = (String)session.getValue(UserName);String oldpassword = new String(request.getParameter(oldpassword).getBytes(ISO8859_1),GBK);String newpassword = new String(request.getParameter(newpassword).getBytes(ISO8859_1),GBK);圖10 密碼修改頁(yè)面if(!(User.ChkLogin(username,oldpassword)% alert(舊密碼輸入錯(cuò)誤,請(qǐng)重新輸入.)

27、;window.history.back(); 人員檔案模塊查詢(xún)?nèi)藛T檔案管理人員檔案添加人員檔案模塊主頁(yè)面Employee.jspEmployeeLeft.jspAddEmployeeStep2.jspAddEmployeeStep1.jsp ManageEmployeeStep1.jspManageEmployeeStep2.jspModifyEmployeeStep1.jspModifyEmployeeStep2.jspDelEmployeeStep1.jspSearchEmployeeStep1.jspSearchEmployeeStep2.jspViewEmployeeStep1.js

28、p圖11人員檔案模塊結(jié)構(gòu)圖4.3 人員檔案模塊人員檔案是人事管理系統(tǒng)的基本數(shù)據(jù)資料,是員工管理系統(tǒng)的基本功能,其提供的功能有:添加人員檔案,修改人員檔案,刪除人員檔案和查詢(xún)?nèi)藛T檔案。圖14 查看人員檔案頁(yè)面4.3.2相關(guān)JavaBean程序 Employee.java定義了類(lèi)Employee,用來(lái)封裝與人員檔案相關(guān)的方法,如增加、修改、刪除、查詢(xún)等,其定義的關(guān)鍵方法有:Add()用于添加人員檔案,Modify()用于修改人員檔案,Delete(String _EmployeeID)用于刪除人員檔案,ListAll()用于列出所有人員檔案,Search()用于查詢(xún)?nèi)藛T檔案.4.3.3 相關(guān)JSP

29、文件本模塊包含的JSP文檔與其功能如下: Employee.jsp功能與index.jsp類(lèi)似, EmployeeLeft.jsp用于顯示本模塊網(wǎng)頁(yè)的功能. AddEmployeeStep1.jsp主要用于提供用戶(hù)輸入人員檔案信息的界面, AddEmployeeStep2.jsp則用于提交信息并連接數(shù)據(jù)庫(kù)和修改數(shù)據(jù)庫(kù).ManageEmployeeStep1.jsp主要用于顯示人員管理的條件查詢(xún)頁(yè)面, ManageEmployeeStep2.jsp則用于操作數(shù)據(jù)庫(kù)并顯示查詢(xún)結(jié)果列表, 單擊列表中的“修改”,則進(jìn)入ModifyEmployeeStep1.jsp頁(yè)面,此頁(yè)面提供修改人員信息功能,單擊

30、修改按鈕后,剛進(jìn)入ModifyEmployeeStep2.jsp向數(shù)據(jù)庫(kù)中寫(xiě)入信息,如果更新成功剛顯示“修改人員檔案成功”,否則顯示“修改人員檔案失敗!”并將錯(cuò)誤顯示在頁(yè)面中。如果單擊刪除,剛進(jìn)入DelEmployeeStep1.jsp頁(yè)面,實(shí)現(xiàn)刪除操作。SearchEmployeeStep1.jsp頁(yè)面,主要用于查詢(xún)?nèi)藛T檔案,在管理人員檔案操作中,既使用其來(lái)進(jìn)行數(shù)據(jù)庫(kù)查詢(xún),SearchEmployeeStep2.jsp則用于顯示查詢(xún)結(jié)果列表,由于員工信息較多,因此只選取部分顯示,如需查看詳細(xì)信息,則可單擊員工編號(hào),進(jìn)入ViewEmployeeStep1.jsp頁(yè)面,該文件用于顯示員工的詳細(xì)信

31、息以與其余模塊的信息,如獎(jiǎng)懲情況和調(diào)動(dòng)情況。如圖14所示。限于篇幅有限,這里就不一一列舉各文件的主要操作代碼。4.4 獎(jiǎng)懲管理模塊 獎(jiǎng)懲管理模塊主要用于記錄企業(yè)員工的獎(jiǎng)懲情況,其主要提供的功能有添加獎(jiǎng)懲記錄和修改獎(jiǎng)懲記錄。獎(jiǎng)懲管理模塊模塊主頁(yè)面添加獎(jiǎng)懲記錄管理獎(jiǎng)懲記錄Reward.jspRewardLeft.jspDelRewardStep1.jspAddRewardStep1.jspAddRewardStep2.jspManageRewardStep1.jspModifyRewardStep1.jspModifyRewardStep2.jspViewRewardStep1.jsp圖16 獎(jiǎng)懲

32、管理模塊結(jié)構(gòu)圖4.4.1 實(shí)現(xiàn)效果圖18 管理獎(jiǎng)懲記錄4.4.2 相關(guān)JavaBean程序 Reward.java中定義了類(lèi)Reward,用來(lái)封裝與獎(jiǎng)懲管理有關(guān)的功能方法,比如添加,修改,刪除,查看獎(jiǎng)懲記錄等,其定義的各方法與其功能描述如下:FindByNO(),該方法主要用于實(shí)現(xiàn)根據(jù)記錄號(hào)查找獎(jiǎng)懲信息,用于整體查詢(xún);Add(),主要用于實(shí)現(xiàn)獎(jiǎng)懲記錄的添加操作;Modify(),主要實(shí)現(xiàn)獎(jiǎng)懲信息的修改操作;Delete()實(shí)現(xiàn)刪除操作;SearchByID()通過(guò)員工編號(hào)進(jìn)行查詢(xún)操作,主要用于一般查詢(xún)。ListAll( ),主要用于列出查詢(xún)結(jié)果。4.4.3 相關(guān)JSP文件本模塊主要包含頁(yè)面關(guān)系

33、如圖16的結(jié)構(gòu)圖所示,其中Reward.jsp功能與index.jsp作用相似,RewardLeft.jsp作用是提供了本模塊的功能,如添加獎(jiǎng)懲記錄,管理獎(jiǎng)懲記錄和退出系統(tǒng)。添加獎(jiǎng)懲記錄主要由AddRewardStep1.jsp和AddRewardStep2.jsp兩個(gè)文件組成,其中前者提供了添加記錄的界面,如圖17所示,后者用于調(diào)用JavaBean中的Reward中的Add()方法,向數(shù)據(jù)庫(kù)傳遞填寫(xiě)的信息,更新數(shù)據(jù)庫(kù)。 管理獎(jiǎng)懲記錄主要由ManageRewardStep1.jsp、ManageRewardStep2.jsp、ModifyRewardStep1.jsp、ModifyReward

34、Step2.jsp、ViewRewardStep1.jsp和DelRewardStep1.jsp 五個(gè)文件組成,其中ManageRewardStep1.jsp用于顯示管理獎(jiǎng)懲記錄界面如圖18所示,當(dāng)單擊圖中的修改后,則進(jìn)入ModifyRewardStep1.jsp頁(yè)面,該頁(yè)面表單和圖17類(lèi)似,當(dāng)點(diǎn)擊修改按鈕時(shí)剛進(jìn)入ModifyRewardStep2.jsp頁(yè)面,用于和數(shù)據(jù)庫(kù)進(jìn)行交互,修改數(shù)據(jù)庫(kù)中的記錄,并返回修改結(jié)果。如點(diǎn)擊刪除,剛進(jìn)入DelRewardStep1.jsp頁(yè)面,系統(tǒng)會(huì)提示是否確認(rèn)刪除操作,單擊確定后則進(jìn)行刪除操作,并返回刪除結(jié)果;如點(diǎn)擊員工編號(hào),則可進(jìn)入ViewRewardSt

35、ep1.jsp頁(yè)面,顯示該員工的詳細(xì)獎(jiǎng)懲信息。如圖19所示。人員調(diào)動(dòng)管理模塊模塊主頁(yè)面添加人員調(diào)動(dòng)管理人員調(diào)動(dòng)Translate.jspTranslateLeft.jspDelTranslateStep1.jspAddTranslateStep1.jspAddTranslateStep2.jspManageTranslateStep1.jspModifyTranslateStep1.jspModifyTranslateStep2.jspViewTranslateStep1.jsp圖20 人員調(diào)動(dòng)管理模塊結(jié)構(gòu)圖4.5 獎(jiǎng)懲管理模塊人員調(diào)動(dòng)管理模塊主要用于記錄企業(yè)員工的人員調(diào)動(dòng)情況,其主要提供的功

36、能有添加人員調(diào)動(dòng)記錄和修改人員調(diào)動(dòng)記錄。4.5.2 相關(guān)JavaBean程序 Translate.java中定義了類(lèi)Translate,用來(lái)封裝與人員調(diào)動(dòng)管理有關(guān)的功能方法,比如添加,修改,刪除,查看人員調(diào)動(dòng)記錄等,其定義的各方法與其功能描述如下:FindByNO(),該方法主要用于實(shí)現(xiàn)根據(jù)記錄號(hào)查找人員調(diào)動(dòng)信息,用于整體查詢(xún);Add(),主要用于實(shí)現(xiàn)人員調(diào)動(dòng)記錄的添加操作;Modify(),主要實(shí)現(xiàn)人員調(diào)動(dòng)信息的修改操作;Delete()實(shí)現(xiàn)刪除操作;SearchByID()通過(guò)員工編號(hào)進(jìn)行查詢(xún)操作,主要用于一般查詢(xún)。ListAll( ),主要用于列出查詢(xún)結(jié)果。4.5.3 相關(guān)JSP文件本模

37、塊主要包含頁(yè)面關(guān)系,其中Translate.jsp功能與index.jsp作用相似,TranslateLeft.jsp作用是提供了本模塊的功能,如添加人員調(diào)動(dòng)記錄,管理人員調(diào)動(dòng)記錄和退出系統(tǒng)。添加人員調(diào)動(dòng)記錄主要由AddTranslateStep1.jsp和AddTranslateStep2.jsp兩個(gè)文件組成,其中前者提供了添加記錄的界面,后者用于調(diào)用JavaBean中的Translate中的Add()方法,向數(shù)據(jù)庫(kù)傳遞填寫(xiě)的信息,更新數(shù)據(jù)庫(kù)。 管理人員調(diào)動(dòng)記錄主要由ManageTranslateStep1.jsp、ManageTranslateStep2.jsp、ModifyTransla

38、teStep1.jsp、ModifyTranslateStep2.jsp、ViewTranslateStep1.jsp和DelTranslateStep1.jsp 五個(gè)文件組成,其中ManageTranslateStep1.jsp用于顯示管理人員調(diào)動(dòng)記錄界面如圖22所示,當(dāng)單擊圖中的修改后,則進(jìn)入ModifyTranslateStep1.jsp頁(yè)面,該頁(yè)面表單和圖17類(lèi)似,當(dāng)點(diǎn)擊修改按鈕時(shí)剛進(jìn)入ModifyTranslateStep2.jsp頁(yè)面,用于和數(shù)據(jù)庫(kù)進(jìn)行交互,修改數(shù)據(jù)庫(kù)中的記錄,并返回修改結(jié)果。如點(diǎn)擊刪除,剛進(jìn)入DelTranslateStep1.jsp頁(yè)面,系統(tǒng)會(huì)提示是否確認(rèn)刪除操

39、作,單擊確定后則進(jìn)行刪除操作,并返回刪除結(jié)果;如點(diǎn)擊員工編號(hào),則可進(jìn)入ViewTranslateStep1.jsp頁(yè)面,顯示該員工的詳細(xì)人員調(diào)動(dòng)信息。如圖23所示。4.6 企業(yè)員工管理系統(tǒng)文件結(jié)構(gòu)圖(見(jiàn)圖24)4.7 技術(shù)難點(diǎn)4.7.1 中文亂碼問(wèn)題圖24 企業(yè)員工管理系統(tǒng)文件結(jié)構(gòu)圖開(kāi)發(fā)java應(yīng)用出現(xiàn)亂碼是很常見(jiàn)的,畢竟現(xiàn)在unicode的使用還不是很廣泛,在使用gb2312(包含了gbk簡(jiǎn)體,big5繁體)的系統(tǒng)中要正確實(shí)現(xiàn)中文的display和數(shù)據(jù)庫(kù)的存儲(chǔ)是最基本的要求。由于瀏覽器中的參數(shù)傳遞是按字節(jié)傳送,因此英文和數(shù)字不會(huì)有任何的問(wèn)題,而中文漢字則由兩個(gè)字節(jié)組成,因此導(dǎo)致了中文無(wú)常顯示

40、。本次實(shí)驗(yàn)中碰到了許多JSP和數(shù)據(jù)庫(kù)中的中文顯示問(wèn)題,以與JSP網(wǎng)頁(yè)的中文顯示問(wèn)題,本人經(jīng)過(guò)上網(wǎng)搜索了好多種中文問(wèn)題解決方案,但有些并不能解決本次實(shí)驗(yàn)所碰到的問(wèn)題,經(jīng)過(guò)多次測(cè)試,現(xiàn)將本系統(tǒng)中文顯示問(wèn)題解決方案列出如下:(1)在首頁(yè)將此句包含進(jìn)去,但是經(jīng)過(guò)測(cè)試,許多公用模塊無(wú)常顯示中文,如Header.jsp和Footer.jsp,以與各模塊主頁(yè)也無(wú)常顯示漢字,如將此句包含到顯示亂碼的頁(yè)面中,則系統(tǒng)編譯錯(cuò)誤,顯示如下錯(cuò)誤:org.apache.jasper.JasperException: /Header.jsp(0,0) Page directive: cant have multiple o

41、ccurrences of contentType。所以經(jīng)過(guò)多次試驗(yàn),把將此句包含進(jìn)文件可以正常顯示的文件則保留此句,不能正常顯示的則采用方法(2)(2)在頁(yè)首包含此句,經(jīng)過(guò)測(cè)試,使用此句后,無(wú)常顯示的頁(yè)面,能夠正常顯示中文了。(3)針對(duì)JSP與數(shù)據(jù)庫(kù)之間的中文轉(zhuǎn)化問(wèn)題,本系統(tǒng)采取的方法是在每次傳參數(shù)的前面都進(jìn)行編碼轉(zhuǎn)換如:String username = new String(request.getParameter(username).getBytes(ISO8859_1),GBK);4.7.2 安全性問(wèn)題將項(xiàng)目發(fā)布到互聯(lián)網(wǎng)上后,有些用戶(hù)不是點(diǎn)擊超打開(kāi)的某個(gè)頁(yè)面,而是在地址欄中直接寫(xiě),而

42、后進(jìn)入,試圖避開(kāi)身份驗(yàn)證,處于對(duì)安全性的考慮,本項(xiàng)目在用戶(hù)登陸后才能進(jìn)入的頁(yè)面中,加入了如下的一行判斷,如果用戶(hù)非法進(jìn)入,則自動(dòng)跳轉(zhuǎn)到登錄界面: 其中Check.jsp中的代碼如下:4.7.3 JavaScript的實(shí)現(xiàn)為使本系統(tǒng)使用過(guò)程中更人性化,本系統(tǒng)中加入了一些JavaScript 代碼,例如日歷的實(shí)現(xiàn),介于本人水平有限,系統(tǒng)中使用的較難的JavaScript代碼一部分摘自互聯(lián)網(wǎng),其他的是參考其他書(shū)中所介紹的案例。5、系統(tǒng)測(cè)試 在完成了程序的編寫(xiě)工作后,接下來(lái)將進(jìn)行軟件的測(cè)試,這里說(shuō)的軟件,并不單單是指程序本身,還包括其他方面.測(cè)試和開(kāi)發(fā)一樣,也是一項(xiàng)技術(shù)性很強(qiáng)的工作,有著很多的技巧.

43、軟件測(cè)試是軟件質(zhì)量保證的主要活動(dòng)之一,因此,測(cè)試的質(zhì)量直接影響軟件的質(zhì)量.5.1 測(cè)試的定義與目的 軟件測(cè)試就是在軟件投入運(yùn)行前,對(duì)軟件的需求分析,設(shè)計(jì)規(guī)格說(shuō)明和編碼的最終復(fù)審,是保證軟件質(zhì)量的關(guān)鍵步驟.如果要給軟件測(cè)試下定義,可以這樣將,軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程. 測(cè)試的目的在于將軟件設(shè)計(jì)時(shí)設(shè)計(jì)者與程序開(kāi)發(fā)者之間理解不一致的地方,功能與需求不一致的地方,不符合邏輯思維的情況都反映給質(zhì)量控制部門(mén),由質(zhì)量控制部門(mén)調(diào)配需求部門(mén)統(tǒng)一作出一個(gè)明確解答,再由開(kāi)發(fā)人員進(jìn)行修改和補(bǔ)充. 測(cè)試的目標(biāo)是以最少的時(shí)間和人力找出軟件中潛在的各種錯(cuò)誤和缺陷.5.2 測(cè)試的原則 對(duì)于相對(duì)復(fù)雜的產(chǎn)品或系統(tǒng)來(lái)

44、說(shuō),Zero-Bug是一種理想,Good-Enough是我們的原則.Good-Enough原則就是一種權(quán)衡投入/產(chǎn)出比的原則;不充分的測(cè)試是不負(fù)責(zé)任的;過(guò)分的測(cè)試是一種資源的浪費(fèi),同樣也是一種不負(fù)責(zé)任的表現(xiàn).我們操作的困難在于,如何界定什么樣的測(cè)試是不充分的,什么樣的測(cè)試是過(guò)分的.目前狀況唯一可用的答案是:制定最低通過(guò)標(biāo)準(zhǔn)和測(cè)試容,然后具體問(wèn)題具體分析.5.3 測(cè)試的方法依據(jù)前面所說(shuō)的測(cè)試對(duì)象,我們把測(cè)試劃分為幾個(gè)方面來(lái)進(jìn)行測(cè)試.5.3.1 界面測(cè)試界面測(cè)試是測(cè)試過(guò)程中比較簡(jiǎn)單直觀的一種測(cè)試方法,只要細(xì)心地按界面要求核對(duì)就行了.可這快往往是程序開(kāi)發(fā)人員容易忽視和遺漏的地方,也是常常出Bug的地

45、方.下面是界面測(cè)試中經(jīng)常出現(xiàn)的幾種Bug: 錯(cuò)別字,即界面中的標(biāo)題或者文本容中出現(xiàn)了錯(cuò)別字.這種Bug如果測(cè)試人員不細(xì)心,和難找出來(lái),可能會(huì)出現(xiàn)在提示信息或界面中. 出現(xiàn)了一些根本讀不懂的容,一般多出現(xiàn)在程序的提示信息和一些較長(zhǎng)的文本中.這種情況基本上出現(xiàn)在拼起來(lái)顯示的提示中,頁(yè)面的簡(jiǎn)單述是通過(guò)變量拼組起來(lái)的,通過(guò)程序?qū)⒆忠粋€(gè)一個(gè)地輸出出來(lái).通常是因?yàn)槌绦蛑械目刂棋e(cuò)誤或是程序開(kāi)發(fā)人員對(duì)程序沒(méi)有進(jìn)行認(rèn)真的自測(cè),導(dǎo)致出現(xiàn)這種Bug. 程序員自創(chuàng)的詞語(yǔ),雖然意思對(duì),但不符合界面的標(biāo)準(zhǔn)與需求.這種情況基本上是由于開(kāi)發(fā)人員使用一些專(zhuān)業(yè)術(shù)語(yǔ),并且混雜著自己的理解出現(xiàn)Bug,主要是由于開(kāi)發(fā)過(guò)程中團(tuán)隊(duì)合作沒(méi)又明確的分工,沒(méi)有統(tǒng)一的規(guī)用語(yǔ). 頁(yè)面類(lèi)似的容中,明顯有字體,字號(hào)不同的情況,使界面整體風(fēng)格看上去不一致,這種情況只出現(xiàn)在沒(méi)有CSS定義的情況下,或是已經(jīng)定義的CSS,開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程中沒(méi)有調(diào)用. 標(biāo)題相近的程序與模塊,把標(biāo)題弄混.這種情況多是因?yàn)闃I(yè)務(wù)方面的定義名稱(chēng)很相似或很類(lèi)似,并且業(yè)務(wù)實(shí)體方面也很類(lèi)似,開(kāi)發(fā)人員在開(kāi)發(fā)過(guò)程中忽略了開(kāi)發(fā)名稱(chēng)和模塊,只單獨(dú)地實(shí)現(xiàn)其功能.5.3.2 功能測(cè)試 顧名思義,功能測(cè)試主要是測(cè)試程序模塊是否實(shí)現(xiàn)了設(shè)計(jì)中所有要求的功能.功能測(cè)試中需要注意的有:

溫馨提示

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

評(píng)論

0/150

提交評(píng)論