基于java的人事管理系統(tǒng)畢業(yè)論文_第1頁(yè)
已閱讀1頁(yè),還剩43頁(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、<p>  課題名稱(chēng):基于Java的人事管理系統(tǒng) </p><p><b>  摘 要</b></p><p>  隨著經(jīng)濟(jì)的全球化和Internet 的迅速發(fā)展,企業(yè)的信息化越來(lái)越成為提升企業(yè)生產(chǎn)力和競(jìng)爭(zhēng)力的關(guān)鍵。信息管理系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動(dòng)有機(jī)地組織起來(lái),就必須建立與自身特點(diǎn)相適應(yīng)的信息管

2、理系統(tǒng)。為了解決傳統(tǒng)公司員工信息的管理所面臨著的這些問(wèn)題,員工信息管理系統(tǒng)也就應(yīng)運(yùn)而生了[1]。 系統(tǒng)在基于Struts框架、MVC架構(gòu)模式、JAVA開(kāi)發(fā)平臺(tái)、Oracle數(shù)據(jù)庫(kù)等先進(jìn)技術(shù)的基礎(chǔ)上,應(yīng)用Eclipse開(kāi)發(fā)工具設(shè)計(jì)一個(gè)公司員工信息管理系統(tǒng),有計(jì)算機(jī)來(lái)代替人工執(zhí)行一系列諸如添加、查詢(xún)、修改、刪除等操作。實(shí)現(xiàn)了對(duì)公司員工信息方便、統(tǒng)一、高效的人性化管理。完成了對(duì)企業(yè)員工系統(tǒng)化、規(guī)范化、自動(dòng)化的管理,同時(shí)也大大加強(qiáng)了對(duì)數(shù)

3、據(jù)處理的及時(shí)性和準(zhǔn)確性。 MVC和java的結(jié)合,使系統(tǒng)具有結(jié)構(gòu)清晰、易維護(hù)、兼容、高效、安全等特點(diǎn),經(jīng)測(cè)試使用后發(fā)現(xiàn):該系統(tǒng)的建成大大提高了公司管理水平和工作效率,為領(lǐng)導(dǎo)決策提供了可靠的數(shù)據(jù),增強(qiáng)了企業(yè)的競(jìng)爭(zhēng)力。關(guān)鍵詞:?jiǎn)T工信息管理系統(tǒng)  MVC模式  Java JSP</p><p><b>  Abstract</b></p><p&

4、gt;  With globalization of economy and the rapid development of Internet, the enterprise informatization has become the key to improve industrial productivity and competitive ability , while the network-based production

5、management is the most important item when enterprises actualize the informatization Anobject-oriented ,distributed and trans-platformed framework is provided to develop and deploy robust ,safe ,reusable , and flexible e

6、nterprise application. Based on the enterprise application, logis</p><p>  Key words: MIS  MVC  Java</p><p><b>  目錄</b></p><p><b>  1緒 論4</b></

7、p><p><b>  1.1引 言4</b></p><p>  1.2國(guó)內(nèi)外研究現(xiàn)狀5</p><p>  1.3研究的目的和意義6</p><p><b>  1.4研究方法7</b></p><p>  1.5研究目標(biāo)及解決的主要內(nèi)容7</p>&

8、lt;p>  2系統(tǒng)采用的開(kāi)發(fā)技術(shù)以及思想9</p><p>  2.1 Oracle 10g數(shù)據(jù)庫(kù)技術(shù)9</p><p>  2.2 Java 開(kāi)發(fā)環(huán)境的選擇9</p><p>  2.3 JAVA開(kāi)發(fā)環(huán)境的簡(jiǎn)介11</p><p>  2.4 Struts框架的應(yīng)用12</p><p>  2.5

9、JSP應(yīng)用14</p><p>  2.6 Tomcat5.0 應(yīng)用服務(wù)器15</p><p>  2.7 Eclipse開(kāi)發(fā)工具16</p><p>  2.8 B/S 設(shè)計(jì)結(jié)構(gòu)16</p><p>  2.9 MVC模式16</p><p>  2.10 Java與數(shù)據(jù)庫(kù)的連接及訪問(wèn)17</p&

10、gt;<p><b>  3需求分析19</b></p><p>  3.1系統(tǒng)需求分析19</p><p>  3.2系統(tǒng)可行性分析20</p><p>  3.3系統(tǒng)數(shù)據(jù)流圖21</p><p>  3.4系統(tǒng)功能介紹22</p><p>  3.5系統(tǒng)開(kāi)發(fā)的目標(biāo)22

11、</p><p>  3.6系統(tǒng)的基本E-R圖22</p><p>  3.7關(guān)系描述的設(shè)計(jì)24</p><p><b>  4系統(tǒng)設(shè)計(jì)25</b></p><p>  4.1系統(tǒng)功能結(jié)構(gòu)圖25</p><p>  4.2系統(tǒng)功能流程圖26</p><p>  4

12、.3數(shù)據(jù)庫(kù)的設(shè)計(jì)26</p><p>  4.3.1數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)26</p><p>  4.3.2數(shù)據(jù)庫(kù)的物理設(shè)計(jì)27</p><p>  4.4詳細(xì)設(shè)計(jì)28</p><p>  5系統(tǒng)的實(shí)現(xiàn)與調(diào)試29</p><p>  5.1 員工信息管理系統(tǒng)的設(shè)計(jì)29</p><p> 

13、 5.1.1 添加頁(yè)面的設(shè)計(jì)29</p><p>  5.1.2 員工信息修改頁(yè)面的設(shè)計(jì)35</p><p>  5.2 員工信息管理系統(tǒng)的調(diào)試44</p><p><b>  6結(jié)束語(yǔ)47</b></p><p>  6.1主要貢獻(xiàn)47</p><p>  6.2啟示和意義47<

14、;/p><p><b>  6.3局限性47</b></p><p>  6.4未來(lái)研究建議48</p><p><b>  參考文獻(xiàn)49</b></p><p><b>  致謝50</b></p><p><b>  附錄:50<

15、;/b></p><p><b>  1緒 論</b></p><p><b>  1.1引 言</b></p><p>  員工信息管理系統(tǒng)是一個(gè)企業(yè)單位不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)單位的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以員工信息管理系統(tǒng)應(yīng)該能夠?yàn)橛脩?hù)提供充足的信息和快捷的查詢(xún)手段。但一直以來(lái)人們使用傳統(tǒng)人工的

16、方式管理文件信息,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)員工信息進(jìn)行管理,具有手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)

17、能夠極大地提高員工管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開(kāi)發(fā)這樣一套管理系統(tǒng)成為迫在眉睫的事情,在下面的各章中我們將以開(kāi)發(fā)一套員工信息管理系統(tǒng)為例,談?wù)勂溟_(kāi)發(fā)過(guò)程和所涉及到的問(wèn)題及解決方法。</p><p>  員工信息管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面[2]。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性

18、好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。經(jīng)過(guò)分析,我們使用 Eclipse開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶(hù)滿(mǎn)意的可行系統(tǒng)。整個(gè)系統(tǒng)從符合操作簡(jiǎn)便、界面友好、靈活、實(shí)用、安全的要求出發(fā)。論文主要介紹了本課題的開(kāi)發(fā)背景,所要完成的功能和開(kāi)發(fā)的過(guò)程。主要說(shuō)明了系統(tǒng)設(shè)計(jì)的重點(diǎn)、設(shè)計(jì)思想、難點(diǎn)技術(shù)和解決方案。</p&g

19、t;<p>  1.2國(guó)內(nèi)外研究現(xiàn)狀</p><p>  [3]信息系統(tǒng)專(zhuān)業(yè)起源于60年代末,1968 年就有一些關(guān)于信息系統(tǒng)和信息管理的文章發(fā)表,信息管理系統(tǒng)一詞開(kāi)始流行。70年代初有了第一批MIS的博士生. MIS專(zhuān)業(yè)迅速擴(kuò)展。一些一流偏下,二流偏上的院校紛紛設(shè)立MIS計(jì)劃。70年代末至80年代初是MIS走向成熟和全面發(fā)展的時(shí)代。從90年代開(kāi)始MIS進(jìn)入了二次創(chuàng)業(yè),完善,創(chuàng)新階段。MIS 向何處

20、去成了MIS界的十分關(guān)心的問(wèn)題,甚至MIS是否會(huì)衰退的問(wèn)題已經(jīng)提出?,F(xiàn)在,MIS已不存在生存問(wèn)題, 而是要發(fā)展提高。</p><p>  隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,給信息時(shí)代的人們帶來(lái)了很大的方便。如今在Internet上,我們隨處都可以看到很多的各類(lèi)信息管理系統(tǒng),如企業(yè)信息管理系統(tǒng),電子商務(wù)系統(tǒng),學(xué)校教務(wù)管理系統(tǒng)等各類(lèi)信息管理系統(tǒng)的普及。但是針對(duì)員工信息,目前主要還是由人為來(lái)處理操作,需要花費(fèi)一定人力,這給整個(gè)

21、工作帶來(lái)了很多不便,而且容易出錯(cuò)。因此就需要一個(gè)對(duì)員工信息管理的電子系統(tǒng),使得此過(guò)程更加方便,更加透明,更加高效,以節(jié)省更多的人力和不必要的工作。在現(xiàn)在這樣的系統(tǒng)很常見(jiàn),但是就我們個(gè)人來(lái)說(shuō)這樣的系統(tǒng)使用的不是很多。</p><p>  雖然信息管理系統(tǒng)在國(guó)內(nèi)外廣泛使用,個(gè)人信息管理系統(tǒng)在我國(guó)許多組織部門(mén)、行政部門(mén)黨組織、企事業(yè)單位黨組織部門(mén)都已使用,但是還有許多的學(xué)院、部門(mén)、小公司等單位對(duì)所屬員工的管理還沒(méi)有使用

22、任何管理系統(tǒng),為及時(shí)了解個(gè)人各項(xiàng)信息,管理所屬基本信息情況,保證個(gè)人信息的準(zhǔn)確性和安全性,管理人員要花費(fèi)大量人力、物力和時(shí)間來(lái)作數(shù)據(jù)記錄統(tǒng)計(jì)工作。因此本文以員工信息管理系統(tǒng)為題展開(kāi)研究討論。</p><p>  1.3研究的目的和意義</p><p>  企業(yè)人事管理是企業(yè)管理的一個(gè)重要內(nèi)容,隨著時(shí)代的進(jìn)步,企業(yè)也逐漸變得龐大起來(lái)。各部門(mén)和人員較多,信息流轉(zhuǎn)量大,工作繁重。為提高公司員工的

23、辦公效率,減輕工作人員工作負(fù)擔(dān),節(jié)約辦公經(jīng)費(fèi),從而實(shí)現(xiàn)企業(yè)遠(yuǎn)程及辦公無(wú)紙化、資源信息化、決策科學(xué)化、知識(shí)共享化,進(jìn)而實(shí)現(xiàn)對(duì)客戶(hù)檔案進(jìn)行分區(qū)管理,部門(mén)級(jí)信息、財(cái)務(wù)信息記錄以及報(bào)表的網(wǎng)上查詢(xún),所以很有必要建立一個(gè)高質(zhì)量、高效率、智能化的辦公系統(tǒng),協(xié)助企業(yè)實(shí)現(xiàn)辦公自動(dòng)化、網(wǎng)絡(luò)化、電子化,為企業(yè)搭建一個(gè)通用化與個(gè)性化兼顧的企業(yè)辦公解決平臺(tái)。</p><p>  最初的人事管,都是靠人力來(lái)完成的。這種管理方式存在著許多缺點(diǎn)

24、,如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。當(dāng)企業(yè)規(guī)模比較小的時(shí)候,人力可以完成,隨著企業(yè)的規(guī)模越來(lái)越大,企業(yè)的員工認(rèn)輸也越來(lái)越多,依然維持著人力進(jìn)行人事管理,必然會(huì)造成工作效率低,工作錯(cuò)誤增高的問(wèn)題。但員工信息管理又是一個(gè)企業(yè)單位不可缺少的部分,它的內(nèi)容對(duì)于企事業(yè)單位的決策者和管理者來(lái)說(shuō)都至關(guān)重要。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)個(gè)人信息進(jìn)行管理,具有手工管理所無(wú)法比擬的

25、優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。因此,開(kāi)發(fā)這樣一套管理系統(tǒng)成為很有必要的事情。</p><p>  而員工信息管理系統(tǒng)就是把分散的企業(yè)單位的職工信息實(shí)行統(tǒng)一,集中、規(guī)范的收集管理,建立分類(lèi)編號(hào)管理,電腦存儲(chǔ)查詢(xún)以及防火,防潮,防蛀防盜等現(xiàn)代化,專(zhuān)業(yè)化的管理系統(tǒng),為企事業(yè)單位和職工解除后顧之憂(yōu)。 企業(yè)員工管理系統(tǒng)為企業(yè)單位提供信息咨詢(xún),信息檢索,信息存取等服務(wù)。 員工

26、信息管理系統(tǒng)基本上能夠滿(mǎn)足現(xiàn)代企業(yè)人事管理系統(tǒng)使用表格對(duì)各種信息分門(mén)別類(lèi),組成企業(yè)人事管理系統(tǒng),可以方便地查詢(xún)、查閱、修改、交流和重復(fù)使用。 </p><p><b>  1.4研究方法</b></p><p>  本系統(tǒng)研究方法主要有:文獻(xiàn)資料法、理論與實(shí)踐法、比較法。</p><p>  (1)文獻(xiàn)資料法:引用國(guó)內(nèi)外有關(guān)管理信息系統(tǒng)及相關(guān)管

27、理系統(tǒng)的參考文獻(xiàn)及有關(guān)開(kāi)發(fā)技術(shù)的參考文獻(xiàn);</p><p>  (2)理論與實(shí)踐法:把所學(xué)的理論應(yīng)用于系統(tǒng)模型的實(shí)現(xiàn);</p><p>  (3)比較法:利用國(guó)內(nèi)和國(guó)外對(duì)管理信息系統(tǒng)的設(shè)計(jì)進(jìn)行比較。</p><p>  1.5研究目標(biāo)及解決的主要內(nèi)容</p><p>  該員工信息管理系統(tǒng)基于功能強(qiáng)大的Java編程技術(shù),采用B/S模式結(jié)構(gòu)的設(shè)

28、計(jì)思想,開(kāi)發(fā)工具選用Eclipse,Tomcat5.0為其應(yīng)用服務(wù)器,再利用JSP頁(yè)面等實(shí)現(xiàn)員工信息的管理,在功能模塊中對(duì)各種信息進(jìn)行編輯,具體包括統(tǒng)計(jì)、添加、修改、刪除、查詢(xún)等基本操作。</p><p>  本文主要對(duì)公司員工信息管理系統(tǒng)的功能模塊進(jìn)行了詳細(xì)的分析與設(shè)計(jì),對(duì)該系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)語(yǔ)言與工具也進(jìn)行了闡述。</p><p>  (1)查閱資料,對(duì)該課題的研究現(xiàn)狀進(jìn)行分析,進(jìn)行總體方

29、案設(shè)計(jì)和系統(tǒng)結(jié)構(gòu)設(shè)計(jì);</p><p>  (2)對(duì)系統(tǒng)中員工所涉及到的相關(guān)檔案信息、資料等進(jìn)行分類(lèi)整理,存儲(chǔ);</p><p>  (3)建立系統(tǒng)數(shù)據(jù)模型,進(jìn)行數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì),建立系統(tǒng)應(yīng)用模型,進(jìn)行算法設(shè)計(jì);</p><p>  (4)調(diào)試管理系統(tǒng),通過(guò)實(shí)踐來(lái)進(jìn)一步完善其功能,使其科學(xué)合理,從而推廣應(yīng)用。</p><p>  2系統(tǒng)采用的開(kāi)發(fā)

30、技術(shù)以及思想</p><p>  2.1 Oracle 10g數(shù)據(jù)庫(kù)技術(shù)</p><p>  [3] Oracle Database 10g系統(tǒng)的技術(shù)特點(diǎn):</p><p>  每一個(gè)Oracle數(shù)據(jù)庫(kù)都是一個(gè)數(shù)據(jù)的集合,這些數(shù)據(jù)包含在一個(gè)或多個(gè)文件中。在開(kāi)發(fā)應(yīng)用程序的過(guò)程中,用戶(hù)創(chuàng)建表和索引便于數(shù)據(jù)進(jìn)行保存和快速檢索。用戶(hù)還可以使用外部表訪問(wèn)當(dāng)前數(shù)據(jù)庫(kù)之外的文件中

31、的數(shù)據(jù),就像訪問(wèn)表中的數(shù)據(jù)一樣。</p><p>  在Oracle數(shù)據(jù)庫(kù)中,表是最基本的結(jié)構(gòu)。Oracle Database 10g系統(tǒng)支持多種類(lèi)型的表,這些表包括關(guān)系表、對(duì)象關(guān)系表、索引編排表、外部表、刪除的表等??梢允褂靡晥D訪問(wèn)表中的數(shù)據(jù)。在Oracle Database 10g系統(tǒng)中,視圖既可以是只讀的,也可以是可更新的,既可以引用本地表,也可以引用遠(yuǎn)程表。</p><p>  S

32、QL語(yǔ)言是操縱數(shù)據(jù)庫(kù)的最基本的方法。Oracle系統(tǒng)對(duì)Java和JDBC提供支持,用戶(hù)可以使用Java取代PL/SQL完成很多操作。在Oracle系統(tǒng)中,用戶(hù)可以使用Oracle的XML接口和XML類(lèi)型,通過(guò)XML執(zhí)行數(shù)據(jù)的插入和檢索。</p><p>  Oracle應(yīng)用服務(wù)器10g提供了許多實(shí)用工具來(lái)確保系統(tǒng)和應(yīng)用程序用小的使用現(xiàn)有系統(tǒng)資源,在低成本服務(wù)器和存儲(chǔ)器上提供最高可伸縮性。并且它為關(guān)鍵任務(wù)的應(yīng)用程序

33、提供了高效、可靠、安全的數(shù)據(jù)管理,還包含了oracle 數(shù)據(jù)庫(kù)所有組件。</p><p>  2.2 Java 開(kāi)發(fā)環(huán)境的選擇</p><p>  [3] 由于Java具有跨平臺(tái)的特性,所以同其他編程語(yǔ)言相比,它更具有以下的優(yōu)勢(shì):</p><p> ?。?)用Java可以?xún)?yōu)化同數(shù)據(jù)庫(kù)的連接</p><p>  連接訪問(wèn)數(shù)據(jù)庫(kù)是項(xiàng)目開(kāi)發(fā)的基本需

34、求,能實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪問(wèn)控制的編程語(yǔ)言很多,但Java語(yǔ)言更能根據(jù)項(xiàng)目的實(shí)際需求,采用適合的方式,用一種高效和安全的方式同數(shù)據(jù)庫(kù)交互。</p><p>  Java采用JDBC(Java DataBase Connectivity) 提供的方法連接到數(shù)據(jù)庫(kù)上。JDBC里封裝了用Java語(yǔ)言讀寫(xiě)數(shù)據(jù)庫(kù)的通用方法,同常見(jiàn)的ODBC連接數(shù)據(jù)庫(kù)的方式相比,JDBC由于具有了Java語(yǔ)言跨平臺(tái)的特性,不僅能同Wind

35、ows平臺(tái)上的數(shù)據(jù)庫(kù)進(jìn)行交互,更能方便地連接訪問(wèn)構(gòu)架在其他操作系統(tǒng)上的數(shù)據(jù)庫(kù)環(huán)境。此外,通過(guò)JDBC里定義的優(yōu)化查詢(xún)功能,程序員更能以高效和安全的方式執(zhí)行SQL語(yǔ)句,操作數(shù)據(jù)庫(kù)。</p><p> ?。?)用Java可以開(kāi)發(fā)具有強(qiáng)大功能的網(wǎng)絡(luò)應(yīng)用</p><p>  現(xiàn)在網(wǎng)絡(luò)的應(yīng)用涉及到各個(gè)方面中,比如我們可以在家中邊喝著咖啡,邊在網(wǎng)絡(luò)上訂購(gòu)圖書(shū),安逸的在家等著圖書(shū)送上門(mén)。又或者某個(gè)公司的

36、老板,在家中通過(guò)Java所開(kāi)發(fā)的應(yīng)用程序,就可以管理公司的日常運(yùn)營(yíng)。</p><p>  使用Java語(yǔ)言,可以在不同的網(wǎng)絡(luò)環(huán)境上構(gòu)架一個(gè)虛擬的軟件平臺(tái),這層平臺(tái)不僅能向用戶(hù)屏蔽不同網(wǎng)絡(luò)間的差異,更能封裝網(wǎng)絡(luò)底層的數(shù)據(jù)交換與通訊的細(xì)節(jié)。</p><p>  所以,網(wǎng)絡(luò)編程是Java語(yǔ)言的特長(zhǎng)。程序員們通過(guò)Java提供的網(wǎng)絡(luò)開(kāi)發(fā)類(lèi)庫(kù),不僅能快速地開(kāi)發(fā)基本的Web應(yīng)用項(xiàng)目,更能開(kāi)發(fā)面向網(wǎng)絡(luò)服務(wù)

37、的高級(jí)應(yīng)用,比如能實(shí)現(xiàn)“運(yùn)行異地代碼,就像在本地運(yùn)行一樣的”RMI分布式應(yīng)用。</p><p> ?。?)用Java語(yǔ)言可以連接不同硬件平臺(tái)</p><p>  如果我們要實(shí)現(xiàn)手機(jī)與計(jì)算機(jī)之間的通訊和交互,這用其他編程語(yǔ)言的眼光來(lái)看是不可能完成的任務(wù),因?yàn)椴煌布脚_(tái)包含了不同的操作系統(tǒng),而不同操作系統(tǒng)間的數(shù)據(jù)傳輸和存儲(chǔ)格式的標(biāo)準(zhǔn)是不同的。</p><p>  但使

38、用Java語(yǔ)言可以輕易地實(shí)現(xiàn)這一需求。Java語(yǔ)言的跨平臺(tái)特性導(dǎo)致了Java開(kāi)發(fā)出來(lái)的代碼是面向Java虛擬機(jī)的,而不是面向操作系統(tǒng),更不是面向硬件的。所以,Java語(yǔ)言包含了諸如J2ME、J2EE和J2SE等開(kāi)發(fā)標(biāo)準(zhǔn),這些標(biāo)準(zhǔn)包含的類(lèi)庫(kù)(即包含實(shí)現(xiàn)特定功能的jar包,類(lèi)似于C語(yǔ)言的.h文件)能幫助程序員實(shí)現(xiàn)不同硬件平臺(tái)的連接。</p><p>  綜上所述,同其他編程語(yǔ)言相比,Java具有跨平臺(tái)(及其衍生)的優(yōu)

39、勢(shì),這些優(yōu)勢(shì)不僅能從語(yǔ)法架構(gòu)的層次,幫助程序員改善項(xiàng)目開(kāi)發(fā)的方式,提高項(xiàng)目開(kāi)發(fā)的效率,更能從應(yīng)用架構(gòu)的層次,幫助程序員很好地實(shí)現(xiàn)“一次開(kāi)發(fā),多次運(yùn)行”的項(xiàng)目部署方式。這對(duì)縮短項(xiàng)目開(kāi)發(fā)周期,降低項(xiàng)目的開(kāi)發(fā)和維護(hù)成本是大有好處的。</p><p>  本系統(tǒng)就是基于Java EE平臺(tái)開(kāi)發(fā)的,下面著重講述J2EE的發(fā)展及應(yīng)用。</p><p>  J2EE即Java 2 Platform Ent

40、erprise Edition (J2EE)是JAVA平臺(tái)的企業(yè)版。J2EE系統(tǒng)平臺(tái)的思想是通過(guò)一個(gè)基于組件的應(yīng)用程序模型為分布式應(yīng)用程序提供一個(gè)統(tǒng)一的標(biāo)準(zhǔn)。J2EE通過(guò)提供中間層集成框架來(lái)滿(mǎn)足多種需求,其中包括高可用性、高可靠性、高可擴(kuò)展性以及低成本等需求。同時(shí)通過(guò)提供統(tǒng)一的開(kāi)放平臺(tái),降低開(kāi)發(fā)多層系統(tǒng)的復(fù)雜性,并且對(duì)現(xiàn)有應(yīng)用程序提供了強(qiáng)有力的支持。 J2EE使用多層分布式應(yīng)用的模型,它將傳統(tǒng)的兩層模型劃分成許多層,每種不同的服

41、務(wù)提供一個(gè)獨(dú)立的層。J2EE典型的4層結(jié)構(gòu)中的四層如圖1-2J2EE典型的4層結(jié)構(gòu)中的四層分別如下。① 運(yùn)行在客戶(hù)機(jī)上客戶(hù)層組件。② 運(yùn)行在J2EE服務(wù)器上Web層組件③ 運(yùn)行J2EE服務(wù)器上的業(yè)務(wù)邏輯層組件④ 運(yùn)行在EIS(Enterprise Information System-企業(yè)信息系統(tǒng))服務(wù)器上的企業(yè)信息系統(tǒng)層組件。</p><p>  2.3 JAVA開(kāi)發(fā)環(huán)境的簡(jiǎn)介 </p>

42、<p>  JDK(Java Development Kit)是Sun Microsystems針對(duì)Java開(kāi)發(fā)員的產(chǎn)品[4]。自從Java推出以來(lái),JDK已經(jīng)成為使用最廣泛的Java SDK(Software development kit)。</p><p>  JDK 是整個(gè)Java的核心,包括了Java運(yùn)行環(huán)境(Java Runtime Environment),一堆Java工具和Java基礎(chǔ)

43、的類(lèi)庫(kù)(rt.jar)。不論什么Java應(yīng)用服務(wù)器實(shí)質(zhì)都是內(nèi)置了某個(gè)版本的JDK。因此掌握 JDK是學(xué)好Java的第一步。最主流的JDK是Sun公司發(fā)布的JDK,除了Sun之外,還有很多公司和組織都開(kāi)發(fā)了自己的JDK,例如IBM公司開(kāi)發(fā)的JDK,BEA公司的Jrocket,還有GNU組織開(kāi)發(fā)的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)運(yùn)行效率要比Sun JDK包含的JVM高出許多。而專(zhuān)門(mén)運(yùn)行在

44、x86平臺(tái)的Jrocket在服務(wù)端運(yùn)行效率也要比Sun JDK好很多。但不管怎么說(shuō),我們還是需要先把Sun JDK掌握好。</p><p>  2.4 Struts框架的應(yīng)用</p><p>  Struts為Java Web應(yīng)用提供了現(xiàn)成的通用框架,大大提高了Web應(yīng)用的開(kāi)發(fā)速度,是基于MVC的Web應(yīng)用框架,是一群經(jīng)驗(yàn)豐富的Web開(kāi)發(fā)專(zhuān)家的智慧結(jié)晶。</p><p&

45、gt;  Struts是由一個(gè)資源文件(ApplicationResources.properties)、兩個(gè)配置文件(struts-config.xml和web.xml)、許多的標(biāo)簽庫(kù)(Tablib)組成的框架。</p><p>  Struts實(shí)現(xiàn)MVC的機(jī)制。在Struts框架中,模型有實(shí)現(xiàn)業(yè)務(wù)邏輯的JavaBean或EJB組件構(gòu)成,控制器由ActionServlet和Action來(lái)實(shí)現(xiàn),視圖由一組JSP文

46、件組成。圖2-1顯示了Struts實(shí)現(xiàn)的MVC框架。</p><p>  圖2-1 Struts實(shí)現(xiàn)的MVC框架</p><p>  對(duì)于采用Struts框架的Web應(yīng)用,在Web應(yīng)用啟動(dòng)時(shí)就會(huì)加載并初始化ActionServlet,ActionServlet從struts-config.xml文件中讀取配置信息,把它們存放到各種配置對(duì)象中,例如Action的映射信息存放在ActionMa

47、pping對(duì)象中。當(dāng)Actionservlet接收到一個(gè)客戶(hù)請(qǐng)求時(shí),將執(zhí)行如下流程。</p><p>  (1)Web應(yīng)用啟動(dòng)時(shí)加載并初始化ActionServlet。</p><p> ?。?)ActionServlet從struts-config.xml配置文件中讀取配置信息,并存放到各種配置對(duì)象中。</p><p> ?。?)ActionServlet等待客戶(hù)

48、請(qǐng)求。</p><p> ?。?)接收到客戶(hù)請(qǐng)求時(shí),檢索和用戶(hù)匹配的ActionMapping實(shí)例。</p><p> ?。?)把用戶(hù)提交的數(shù)據(jù)保存到ActionForm對(duì)象中。</p><p> ?。?)根據(jù)配置信息決定是否需要表單驗(yàn)證,如果需要,就調(diào)用ActionForm的validate()方法。</p><p> ?。?) 如果驗(yàn)證成

49、功,ActionServlet將請(qǐng)求轉(zhuǎn)發(fā)給對(duì)應(yīng)的Action,然后調(diào)用Action的excute()方法。</p><p>  (8) Action的excute()方法返回ActionForward對(duì)象,ActionServlet</p><p>  (9)把客戶(hù)請(qǐng)求轉(zhuǎn)發(fā)給對(duì)應(yīng)的JSP組件。</p><p>  (10)JSP組件生成網(wǎng)頁(yè),返回給客戶(hù)。</p

50、><p>  信息流在總的Struts框架中的流程圖如圖2-2所示:</p><p>  圖2-2 信息數(shù)據(jù)流程圖</p><p>  ActionForm,是用來(lái)保存表單數(shù)據(jù)的,是框架中的容器層部分。 </p><p>  Action,是用來(lái)處理各種邏輯的后臺(tái)業(yè)務(wù)層部分,主要是處理前臺(tái)傳來(lái)的數(shù)據(jù)或者是在數(shù)據(jù)庫(kù)中調(diào)用的數(shù)據(jù),并將處理結(jié)果返回給前

51、臺(tái)顯示頁(yè)面。</p><p>  struts-config.xml,則是前臺(tái)顯示層,后臺(tái)邏輯處理層和數(shù)據(jù)保存容器層,相互聯(lián)系協(xié)調(diào)的控制器。各個(gè)層都是通過(guò)控制器struts-config來(lái)進(jìn)行業(yè)務(wù)處理的。</p><p>  ActionServlet 類(lèi)是 Struts 的控制中心類(lèi),所有的 URL 地址映射、ActionForm 的匹配、Action 的執(zhí)行都需要這個(gè)類(lèi)來(lái)進(jìn)行導(dǎo)航。&l

52、t;/p><p><b>  2.5 JSP應(yīng)用</b></p><p><b>  (1)JSP的含義</b></p><p>  JSP(JavaServer Pages)是一種基于Java的腳本技術(shù)。</p><p>  在JSP 的眾多優(yōu)點(diǎn)之中,其中之一是它能將 HTML 編碼從 Web 頁(yè)面的

53、業(yè)務(wù)邏輯中有效地分離出來(lái)。用 JSP 訪問(wèn)可重用的組件,如 Servlet、JavaBean 和基于 Java 的 Web 應(yīng)用程序。JSP 還支持在 Web 頁(yè)面中直接嵌入 Java 代碼??捎脙煞N方法訪問(wèn) JSP 文件:瀏覽器發(fā)送 JSP 文件請(qǐng)求、發(fā)送至 Servlet 的請(qǐng)求。</p><p>  (2)JSP工作過(guò)程 JSP 文件訪問(wèn) Bean 或其它能將生成的動(dòng)態(tài)內(nèi)容發(fā)送到瀏覽器的組件。圖2-

54、2說(shuō)明了該 JSP 訪問(wèn)模型。當(dāng) Web 服務(wù)器接收到一個(gè) JSP 文件請(qǐng)求時(shí),服務(wù)器將請(qǐng)求發(fā)送至服務(wù)器。服務(wù)器 對(duì) JSP 文件進(jìn)行語(yǔ)法分析并生成 Java 源文件(被編譯和執(zhí)行為 Servlet)。Java 源文件的生成和編譯僅在初次調(diào)用 Servlet 時(shí)發(fā)生,除非已經(jīng)更新了原始的 JSP 文件。在這種情況下,服務(wù)器 將檢測(cè)所做的更新,并在執(zhí)行它之前重新生成和編譯 Servlet。</p><p>  圖2

55、-2 瀏覽器發(fā)送 JSP 文件請(qǐng)求</p><p>  發(fā)送至 Servlet 的請(qǐng)求生成動(dòng)態(tài)內(nèi)容,并調(diào)用 JSP 文件將內(nèi)容發(fā)送到瀏覽器。圖2-3說(shuō)明了該訪問(wèn)模型。該訪問(wèn)模型使得將內(nèi)容生成從內(nèi)容顯示中分離出來(lái)更為方便。服務(wù)器 支持 HttpServiceRequest 對(duì)象和 HttpServiceResponse 對(duì)象的一套新方法。這些方法允許調(diào)用的 Servlet 將一個(gè)對(duì)象放入(通常是一個(gè) Bean)請(qǐng)求

56、對(duì)象中,并將該請(qǐng)求傳遞到另一個(gè)頁(yè)面(通常是一個(gè) JSP 文件)以供顯示。調(diào)用的頁(yè)面從請(qǐng)求對(duì)象中檢索 Bean, 并用 JSP 來(lái)生成客戶(hù)機(jī)端的 HTML。</p><p>  請(qǐng)求 JDBC</p><p><b>  結(jié)果Bean</b></p><p><b>  響應(yīng)</b>&

57、lt;/p><p>  圖2-3 發(fā)送至 Servlet請(qǐng)求</p><p>  2.6 Tomcat5.0 應(yīng)用服務(wù)器</p><p>  Tomcat是一個(gè)免費(fèi)的開(kāi)源的Servlet容器,它是Apache基金會(huì)的Jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache,Sun和其它一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和Jsp規(guī)范總能

58、在Tomcat中得到體現(xiàn)。</p><p>  2.7 Eclipse開(kāi)發(fā)工具</p><p>  Eclipse是一個(gè)開(kāi)放源代碼的、基于Java的可擴(kuò)展開(kāi)發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。幸運(yùn)的是,Eclipse附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開(kāi)發(fā)工具和插件開(kāi)發(fā)環(huán)境,這個(gè)組件主要針對(duì)希望擴(kuò)展Eclipse的軟件開(kāi)發(fā)人員,因?yàn)樗试S他們構(gòu)建與

59、eclipse環(huán)境無(wú)縫集成的工具。</p><p>  由于Eclipse中的每樣?xùn)|西都是插件,對(duì)于給Eclipse提供插件,以及給用戶(hù)提供一致和統(tǒng)一的集成開(kāi)發(fā)環(huán)境而言,所有工具開(kāi)發(fā)人員都具有同等的發(fā)揮場(chǎng)所。并且,這種平等和一致性并不僅限于Java開(kāi)發(fā)工具。</p><p>  2.8 B/S 設(shè)計(jì)結(jié)構(gòu)</p><p>  B/S結(jié)構(gòu)(Browser/Server

60、 瀏覽器/服務(wù)器模式),是WEB興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB瀏覽器是客戶(hù)端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶(hù)端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)、維護(hù)和使用??蛻?hù)機(jī)上只要安裝一個(gè)瀏覽器(Browser),如Internet Explorer,服務(wù)器安裝oracle或 SQL Server等數(shù)據(jù)庫(kù)。瀏覽器通Web server同數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交互。 B/S最大的優(yōu)點(diǎn)就是可以在任何地方進(jìn)行操作而不用安裝任何

61、專(zhuān)門(mén)的軟件,只要有一臺(tái)能上網(wǎng)的電腦就能使用,客戶(hù)端零維護(hù)。系統(tǒng)的擴(kuò)展非常容易。</p><p><b>  2.9 MVC模式</b></p><p>  MVC是Model-View-Controller的簡(jiǎn)稱(chēng),即模型-視圖-控制器。他強(qiáng)制性的把應(yīng)用程序的輸入、處理和輸出分開(kāi)。</p><p><b>  MVC處理過(guò)程為:<

62、/b></p><p> ?。?)控制器接受用戶(hù)的請(qǐng)求,并決定調(diào)用哪個(gè)模型來(lái)進(jìn)行處理,同時(shí)也可以解釋用戶(hù)的輸入并將它們映射為模型層可執(zhí)行的操作;</p><p> ?。?)模型根據(jù)用戶(hù)請(qǐng)求進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并返回?cái)?shù)據(jù),通??梢杂肑avaBean或EJB來(lái)實(shí)現(xiàn);</p><p> ?。?)控制其調(diào)用相應(yīng)的視圖來(lái)格式化模型返回的數(shù)據(jù),并通過(guò)試圖呈現(xiàn)給用戶(hù),通

63、常有JSP來(lái)實(shí)現(xiàn)。</p><p>  MVC設(shè)計(jì)模式的主要優(yōu)點(diǎn):</p><p>  可以為一個(gè)模型在運(yùn)行時(shí)同時(shí)建立和使用多個(gè)視圖。變化-傳播機(jī)制可以確保所有相關(guān)的視圖及時(shí)得到模型數(shù)據(jù)變化,從而使所有關(guān)聯(lián)的視圖和控制器做到行為同步。</p><p>  模型的可移植性。因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個(gè)模型獨(dú)立的移植到新的平臺(tái)工作。需要做的只是在新的平臺(tái)上對(duì)視

64、圖和控制器進(jìn)行新的修改。</p><p>  潛在的框架結(jié)構(gòu)??梢曰诖四P徒?yīng)用程序框架,不僅僅是用在設(shè)計(jì)界面的設(shè)計(jì)中。</p><p>  2.10 Java與數(shù)據(jù)庫(kù)的連接及訪問(wèn)</p><p>  [8]JDBC(Java DataBase Connectivity.Java數(shù)據(jù)庫(kù)連接)是一種可用于執(zhí)行SQL(結(jié)構(gòu)化查詢(xún)語(yǔ)言)語(yǔ)句的Java API(Appl

65、ication Programming Interface,應(yīng)用程序設(shè)計(jì)接口)。它是一些由Java語(yǔ)言編寫(xiě)的類(lèi)和界面組成。JDBC為數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)人員提供了一種標(biāo)準(zhǔn)的應(yīng)用程序接口,使開(kāi)發(fā)人員可以用純Java語(yǔ)言編寫(xiě)完整的數(shù)據(jù)庫(kù)應(yīng)用程序。同時(shí),Java語(yǔ)言程序還可以通過(guò)JDBC來(lái)訪問(wèn)計(jì)算機(jī)上已經(jīng)定義的ODBC(Open Database Connectivity.開(kāi)放數(shù)據(jù)庫(kù)連接)數(shù)據(jù)源。</p><p>  網(wǎng)絡(luò)數(shù)

66、據(jù)庫(kù)系統(tǒng),尤其是網(wǎng)絡(luò)三層結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)有著諸多的優(yōu)點(diǎn),三層結(jié)構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)的應(yīng)用在日益增加,使用Java語(yǔ)言和JDBC API發(fā)布含有applet小程序的網(wǎng)頁(yè),通過(guò)網(wǎng)頁(yè)中applet小程序訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)在目前已被廣泛的應(yīng)用。另一方面,由于JDBC使得開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序越來(lái)越受到Java語(yǔ)言程序開(kāi)發(fā)人員的重視。</p><p>  在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)調(diào)用JDBC API方法之前,首先需要進(jìn)行注冊(cè)和裝入JDBC驅(qū)動(dòng)程序。

67、在Java語(yǔ)言java.lang.Class接口中的Class.forName()方法是將指定的類(lèi)裝載到支持Java語(yǔ)言程序運(yùn)行的虛擬機(jī)中。方法如下:</p><p>  Public static class forName(String className)</p><p>  Throws classNotFoundExecption</p><p><

68、b>  {</b></p><p>  Return forName0(className,true,classLoader.getcallerclassLoader();)</p><p><b>  }</b></p><p>  JDBC API在Java.spl包中提供的連接對(duì)象表示與數(shù)據(jù)庫(kù)的連接。連接過(guò)程包括所執(zhí)行的

69、SQL語(yǔ)句和獲取在該連接上所返回的結(jié)果。一個(gè)數(shù)據(jù)庫(kù)應(yīng)用程序可與單個(gè)數(shù)據(jù)庫(kù)有一個(gè)或多個(gè)連接,或者可與許多數(shù)據(jù)庫(kù)有連接。</p><p><b>  3需求分析</b></p><p>  在我們當(dāng)代信息社會(huì)里,人們對(duì)信息的交流與溝通越來(lái)越重視,對(duì)時(shí)間的有效利用更加的注重。同樣公司內(nèi)部對(duì)員工信息的管理要求也越來(lái)越高,因此,員工信息的管理在公司的運(yùn)轉(zhuǎn)過(guò)程成為必不可少的內(nèi)容,

70、方便實(shí)用的員工信息管理系統(tǒng)對(duì)于提高信息利用效率具有重要意義。隨著電腦的普及,簡(jiǎn)單實(shí)用的信息管理系統(tǒng)成為公司內(nèi)部人事管理的不錯(cuò)選擇。該系統(tǒng)包括了人事管理部門(mén)對(duì)該公司員工各種信息的添加、修改、刪除、查詢(xún)等基本操作。</p><p><b>  3.1系統(tǒng)需求分析</b></p><p>  本系統(tǒng)主要是在對(duì)公司內(nèi)部各部門(mén)員工基本信息的分析上進(jìn)行設(shè)計(jì)的,根據(jù)需要,本系統(tǒng)主要

71、具備了以下特點(diǎn)和功能:</p><p>  具有良好的人機(jī)界面,使用方便,易操作;</p><p>  (2)具有較好的權(quán)限管理,身份不同,對(duì)信息的讀寫(xiě)權(quán)限也不同;</p><p>  (3)方便查詢(xún)和修改數(shù)據(jù),只要系統(tǒng)允許,用戶(hù)可以在任何時(shí)間、任何地點(diǎn)辦公;</p><p>  (4)數(shù)據(jù)穩(wěn)定性,采用MVC模式,系統(tǒng)和數(shù)據(jù)的安全性大大提高。

72、</p><p>  員工信息管理系統(tǒng)的基本管理方法:在管理中心里面,管理者可以對(duì)各部門(mén)的員工的基本信息進(jìn)行種操作,具體的操作有:添加員工基本信息、刪除基本信息、修改基本信息、還可以查詢(xún)檢索信息。另外,在一定的前提條件下,還能夠統(tǒng)計(jì)出所需要的員工信息。</p><p>  根據(jù)以上業(yè)務(wù)流程可得圖如3-1所示:</p><p>  圖3-1 總的業(yè)務(wù)流程圖 </

73、p><p>  3.2系統(tǒng)可行性分析</p><p>  本系統(tǒng)管理的對(duì)象都是公司員工的基本信息,并且數(shù)據(jù)內(nèi)容具有一定的關(guān)聯(lián)性,比較適合于采用數(shù)據(jù)庫(kù)管理。根據(jù)所學(xué)的專(zhuān)業(yè)知識(shí)和所具備的專(zhuān)業(yè)技能,采用功能強(qiáng)大的JAVA編程技術(shù),利用Oracle10作為后臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)實(shí)現(xiàn),有指導(dǎo)老師的指導(dǎo)、同學(xué)的幫助和相關(guān)參考文獻(xiàn),特別是網(wǎng)上資料,及參考其它程序的功能,因此完全可以實(shí)現(xiàn)。</p>&l

74、t;p>  本系統(tǒng)的設(shè)計(jì)是在Windows XP中文版操作系統(tǒng)環(huán)境下,采用功能強(qiáng)大的JAVA編程技術(shù),利用Oracle10作為后臺(tái)數(shù)據(jù)設(shè)計(jì)實(shí)現(xiàn)。SUN公司的JAVA開(kāi)發(fā)工具,是目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_(kāi)發(fā)工具。JAVA設(shè)計(jì)之初就是為了簡(jiǎn)化開(kāi)發(fā),并且面向不同的設(shè)備,[9]JAVA編程如同搭積木,將不同的模塊通過(guò)接口連接起來(lái)組成一個(gè)完整的系統(tǒng)。而且很多構(gòu)件是JAVA系統(tǒng)內(nèi)部的,而不需要程序員進(jìn)行開(kāi)發(fā),從而有效的提高了應(yīng)用程

75、序的運(yùn)行效率和可靠性。故而,實(shí)現(xiàn)本系統(tǒng)JAVA是一個(gè)相對(duì)較好的選擇。Oracle是一個(gè)簡(jiǎn)單易學(xué)的關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)工具,數(shù)據(jù)庫(kù)能匯集各種信息以供查詢(xún)、存儲(chǔ)和檢索。</p><p><b>  3.3系統(tǒng)數(shù)據(jù)流圖</b></p><p>  數(shù)據(jù)流圖(DFD)是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過(guò)程中所經(jīng)受的變化[10]。因此,數(shù)據(jù)流圖中沒(méi)有任何具全的物理

76、元素,只是用來(lái)描繪信息在系統(tǒng)中流動(dòng)和處理情況。數(shù)據(jù)流圖共有四種基本符號(hào):矩形數(shù)據(jù)的源或終點(diǎn)(或稱(chēng)為外部項(xiàng)),圓或橢圓表示變換數(shù)據(jù)的處理,向右開(kāi)口的矩形表示數(shù)據(jù)存儲(chǔ),箭頭表示數(shù)據(jù)流,即特定數(shù)據(jù)的流動(dòng)方向。根據(jù)現(xiàn)行員工信息管理的業(yè)務(wù)流程,首先確定數(shù)據(jù)流圖中源點(diǎn)和起點(diǎn)都是JSP員工信息,如此就可得到員工管理系統(tǒng)的基本系統(tǒng)模型如下3-2所示。</p><p>  圖3-2 員工信息的基本流向</p><

77、;p><b>  3.4系統(tǒng)功能介紹</b></p><p>  本系統(tǒng)主要可以實(shí)現(xiàn)以下的管理功能:?jiǎn)T工信息管理模塊、業(yè)務(wù)支援模塊等。</p><p><b>  員工信息管理模塊</b></p><p>  該模塊的主要任務(wù)是完成對(duì)新員工信息的添加,以及對(duì)現(xiàn)有員工信息查詢(xún)、一覽、更新、刪除等。</p>

78、<p><b>  業(yè)務(wù)支援模塊</b></p><p>  該模塊的主要任務(wù)是:?jiǎn)T工中具有某一共同條件的人數(shù)統(tǒng)計(jì)。</p><p>  3.5系統(tǒng)開(kāi)發(fā)的目標(biāo)</p><p>  出于本系統(tǒng)是對(duì)員工信息的一些日常所必需的操作進(jìn)行分析而設(shè)計(jì),因此這個(gè)系統(tǒng)的一個(gè)簡(jiǎn)單適用型的信息管理系統(tǒng),因此,該系統(tǒng)的開(kāi)發(fā)目標(biāo)將最終定位于完成以上所述功能

79、主要業(yè)務(wù)的基本模型上。</p><p>  3.6系統(tǒng)的基本E-R圖</p><p>  在需求分析后,就可以設(shè)計(jì)出能夠滿(mǎn)足用戶(hù)需求的各類(lèi)實(shí)體,以及它們之間的關(guān)系,為后面有設(shè)計(jì)打下基礎(chǔ)。這些實(shí)體包含各種具體的信息,通過(guò)相互之間的作用形成數(shù)據(jù)的流動(dòng)[11]。</p><p>  此管理系統(tǒng)根據(jù)上面的分析規(guī)劃出的實(shí)體有:用戶(hù)信息實(shí)體、登陸用戶(hù)信息實(shí)體、員工信息實(shí)體。&l

80、t;/p><p>  用戶(hù)信息實(shí)體圖如圖3-3所示。</p><p>  圖3-3 用戶(hù)信息實(shí)體圖</p><p>  登陸用戶(hù)信息實(shí)體圖如下圖3-4所示:</p><p>  圖3-4 登錄用戶(hù)實(shí)體圖</p><p>  員工信息實(shí)體圖如下圖3-5所示:</p><p><b>  能力

81、</b></p><p>  圖3-5 員工信息實(shí)體圖</p><p>  3.7關(guān)系描述的設(shè)計(jì)</p><p>  根據(jù)數(shù)據(jù)庫(kù)原理,并結(jié)合以上E-R圖,經(jīng)過(guò)轉(zhuǎn)換,可以導(dǎo)出各個(gè)關(guān)系。其轉(zhuǎn)化規(guī)則為首先每個(gè)實(shí)體應(yīng)該轉(zhuǎn)換成一個(gè)關(guān)系,有屬性的聯(lián)系也應(yīng)轉(zhuǎn)化為一個(gè)關(guān)系然且需要給出每個(gè)關(guān)系的關(guān)鍵字。根據(jù)以上規(guī)則直接給出所有關(guān)系。</p><p>

82、;  用戶(hù)(用戶(hù)ID,用戶(hù)密碼)關(guān)鍵字為用戶(hù)名稱(chēng)。</p><p>  員工(員工ID,員工姓名,所屬部門(mén),性別,入職日期,出生年月,電話(huà)號(hào)碼,郵箱,地址,備注,技能,職位,工資)關(guān)鍵字為員工ID。</p><p>  在得出以上關(guān)系后,根據(jù)關(guān)系數(shù)據(jù)庫(kù)的理論要求,需要對(duì)所有的關(guān)系進(jìn)行關(guān)系規(guī)范化,至少要求各個(gè)關(guān)系達(dá)到第三范式的要求。按照第三范式的要求對(duì)比以上各個(gè)關(guān)系,在所有關(guān)系中都不存在非主

83、屬性對(duì)關(guān)鍵字的部分依賴(lài),即滿(mǎn)足第三范式。</p><p><b>  4系統(tǒng)設(shè)計(jì)</b></p><p>  根據(jù)需求階段的分析,已經(jīng)清楚系統(tǒng)必須具備的功能,接下來(lái)的工作就是這些功能如何實(shí)現(xiàn)的問(wèn)題。</p><p>  4.1系統(tǒng)功能結(jié)構(gòu)圖</p><p>  依據(jù)需求分析階段得到的數(shù)據(jù)流圖,采用軟件工程中軟件設(shè)計(jì)的概念

84、和原理,在保證系統(tǒng)基本功能要求的前提下,結(jié)合本系統(tǒng)新的業(yè)務(wù)流程確定系統(tǒng)必備的所有功能,具體的功能包括:?jiǎn)T工信息管理模塊、業(yè)務(wù)支援模塊。由此給出該員工信息管理系統(tǒng)的系統(tǒng)功能結(jié)構(gòu)圖如圖4-1所示。</p><p>  圖4-1 系統(tǒng)功能結(jié)構(gòu)圖 </p><p>  4.2系統(tǒng)功能流程圖</p><p>  根據(jù)該系統(tǒng)的系統(tǒng)結(jié)構(gòu)功能圖,以及對(duì)該系統(tǒng)的各個(gè)模塊功能

85、的要求可以得到系統(tǒng)功能流程圖。如圖4-2所示。</p><p>  圖4-2 系統(tǒng)功能流程圖</p><p><b>  4.3數(shù)據(jù)庫(kù)的設(shè)計(jì)</b></p><p>  在需求分析階段已經(jīng)完成系統(tǒng)的所有數(shù)據(jù)分析。根據(jù)該階段建立的概念模型,已經(jīng)得出滿(mǎn)足第三范式的幾個(gè)關(guān)系描述,該階段主要的工作就是把前一階段的成果轉(zhuǎn)化為具體的數(shù)據(jù)庫(kù)。一般把數(shù)據(jù)庫(kù)的設(shè)

86、計(jì)分為數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)和數(shù)據(jù)庫(kù)的物理設(shè)計(jì)兩個(gè)步驟。</p><p>  4.3.1數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)</p><p>  需求分析階段已經(jīng)給出了系統(tǒng)的概念模型即E-R圖,根據(jù)E-R圖即可發(fā)進(jìn)行數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)。數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)即把得到的滿(mǎn)足第三范式的關(guān)系轉(zhuǎn)化為特定的數(shù)據(jù)庫(kù)系統(tǒng)下的數(shù)據(jù)表。根據(jù)前面得到的各個(gè)關(guān)系,現(xiàn)把它們轉(zhuǎn)化為數(shù)據(jù)表。</p><p>  用戶(hù)信息表:用戶(hù)I

87、D,用戶(hù)密碼。</p><p>  員工信息表:?jiǎn)T工ID,員工姓名,所屬部門(mén),性別,入職日期,出生年月,電話(huà)號(hào)碼,郵箱,地址,備注,技能,職位,工資。</p><p>  4.3.2數(shù)據(jù)庫(kù)的物理設(shè)計(jì)</p><p>  在完成數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)后,即可以開(kāi)始數(shù)據(jù)庫(kù)的物理設(shè)計(jì)?;谝陨蠑?shù)據(jù)庫(kù)的邏輯設(shè)計(jì),考慮程序設(shè)計(jì)的簡(jiǎn)易性及通用性,采用oracle 10數(shù)據(jù)庫(kù),并在其下

88、創(chuàng)建2個(gè)數(shù)據(jù)表,其結(jié)構(gòu)分別如下:</p><p>  (1)用戶(hù)信息表, 其字段列表如表4-1所示:</p><p>  表4-1 用戶(hù)信息表</p><p>  (2)員工信息表, 其字段列表如表4-2所示:</p><p>  表4-2 員工信息表</p><p><b>  4.4詳細(xì)設(shè)計(jì)</

89、b></p><p>  詳細(xì)設(shè)計(jì)階段的根本任務(wù)是確定應(yīng)該怎樣具體實(shí)現(xiàn)所要求的系統(tǒng),也就是經(jīng)過(guò)這個(gè)階段的設(shè)計(jì)工作,應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述,從而在系統(tǒng)實(shí)現(xiàn)階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)書(shū)寫(xiě)的程序。具體來(lái)說(shuō)就是把經(jīng)過(guò)總體設(shè)計(jì)得到的各個(gè)模塊詳細(xì)的加以描述。</p><p>  由于本采用功能強(qiáng)大的JAVA編程技術(shù),利用 oracle 10作為數(shù)據(jù)庫(kù)開(kāi)發(fā)工具,在此僅給出主程

90、序界面的流程圖,如圖4-3所示,其他的模塊在此就不做多敘。</p><p><b>  登陸 </b></p><p><b>  員工 登陸</b></p><p>  員工信息的更新、削除 </p><p>  檢索 返回</p>

91、;<p>  消除、清除 更新</p><p>  削除 員工ID</p><p>  圖4-3 主程序頁(yè)面的跳轉(zhuǎn)</p><p><b>  5系統(tǒng)的實(shí)現(xiàn)與調(diào)試</b></p><p>  5.1 員工信息管理系統(tǒng)的設(shè)

92、計(jì)</p><p>  5.1.1 添加頁(yè)面的設(shè)計(jì)</p><p>  本界面的主要功能是為了對(duì)新員工信息的添加。首先,當(dāng)用戶(hù)進(jìn)入Eclipse環(huán)境更新并作成sksj工程,然后啟動(dòng)Tomcat。在顯示欄里輸入:http://localhost:8080/sksj,進(jìn)入登陸界面。</p><p>  在界面中填寫(xiě)用戶(hù)ID:company和密碼:123456后,點(diǎn)擊“登

93、陸”,進(jìn)入menu界面。</p><p>  Struts-config.xml是Struts的配置文件,通常把一些描述用戶(hù)請(qǐng)求路徑和Action映射關(guān)系的配置信息寫(xiě)在里面。在改配置文件中,每一個(gè)Action的映射信息都通過(guò)一個(gè)<action>元素來(lái)配置。這些配置信息在系統(tǒng)啟動(dòng)時(shí)被讀入內(nèi)存,供Struts在運(yùn)行期間使用[15]。</p><p>  由menu畫(huà)面跳轉(zhuǎn)到員工信息

94、添加界面,并向數(shù)據(jù)庫(kù)添加新員工的信息,其基本流程圖如5-3所示。</p><p><b>  N</b></p><p><b>  Y</b></p><p>  N Y </p><p>  圖5-3 員工信息的添加流程</p><p>  相關(guān)的s

95、truts-config.xml配置信息代碼為:</p><p>  // 員工信息添加界面初始化<action path="/employee/addInit" name="employeeForm" scope="request"validate="true"type="org.springframework

96、.web.struts.DelegatingActionProxy"><forward name="success" path="/pages/jsp/employee/SY0003.jsp" /></action></p><p>  // 員工信息添加界面</p><p>  <action pa

97、th="/employee/add" name="employeeForm" scope="request"validate="true" input="/pages/jsp/employee/SY0003.jsp"type="org.springframework.web.struts.DelegatingActionPr

98、oxy"><forward name="success" path="/pages/jsp/employee/SY0003.jsp" /><forward name="failure" path="/pages/jsp/employee/SY0003.jsp" /></action></p>

99、;<p>  負(fù)責(zé)向數(shù)據(jù)庫(kù)插入信息的SQL語(yǔ)句代碼為:</p><p>  // 定義表屬性 <parameterMap id="insertEmployeeParameter" class="jp.co.totyuedu.sksj.employee.entity.EmployeeEntity"> <parameter propert

100、y="deptId" /> <parameter property="employeeNo" /> <parameter property="employeeName" /> <parameter property="hireDate" /> <parameter property="

101、sex" /> <parameter property="birthDate" /> <parameter property="address" /> <parameter property="tel" /> <parameter property="mail" /> &

102、lt;parameter property="skill" /> <parameter property="position" /> </p><p>  // 插入員工信息 <insert id="insertEmployeeInfo" parameterMap="insertEmployeeParameter

103、"> INSERT INTO EMPLOYEE(DEPT_ID, EMPLOYEE_NO, EMPLOYEE_NAME, HIRE_DATE, SEX, BIRTH_DATE, ADDRESS, TEL, MAIL, SKILL, POSITION, SALARY, NOTE, CREATE_USER_NAME, UPDATE_USER_NAME ) VA

104、LUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) </insert></p><p>  具體實(shí)現(xiàn)即從menu畫(huà)面,點(diǎn)擊社員管理下的“社員情報(bào)登陸”,就會(huì)跳轉(zhuǎn)到JSP作成的員工信息添加界面,</p><p>  在不填任何信息的情況下,點(diǎn)擊“登陸”按鈕,就會(huì)給出相應(yīng)的提示,如圖5-5所示。</p><p>  圖5-5 信息提

105、示下的員工信息添加界面</p><p>  信息正確填寫(xiě)后,點(diǎn)擊“登陸”,通過(guò)Struts框架就能把數(shù)據(jù)更新到數(shù)據(jù)庫(kù),繽紛把提示信息返回到客戶(hù)端頁(yè)面,</p><p>  5.1.2 員工信息修改頁(yè)面的設(shè)計(jì)</p><p>  由menu畫(huà)面跳轉(zhuǎn)到更新畫(huà)面的基本流程(刪除界面的流程與此相似,不多作描述)如下圖5-7所示。</p><p>  

106、N </p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖5-7 更新員工信息流程</p><p>  其具體執(zhí)行的部分代碼為:</

107、p><p>  sqlMap連接數(shù)據(jù)庫(kù),其作用是直接從數(shù)據(jù)庫(kù)提取或存放信息。</p><p>  <sqlMap> // 向數(shù)據(jù)庫(kù)更新員工信息 <update id="updateEmployeeInfo" parameterClass="jp.co.totyuedu.sksj.employee.entity.EmployeeEntity&q

108、uot;> UPDATE EMPLOYEE E SET E.EMPLOYEE_NO =#employeeNo#, E.EMPLOYEE_NAME =#employeeName#, E.DEPT_ID =#deptId#, E.SKILL =#skill#, E.HIRE_DATE =#hireDate#, E.POSITION =#position#, E.BIRTH_DATE =#birthDate#, E.A

109、DDRESS =#address#, E.MAIL =#mail#, E.NOTE =#note#, E.SALARY =#salary#, E.SEX =#sex#, E.TEL =#tel# WHERE E.EMPLOYEE_NO =#employeeNo# </update> // 從數(shù)據(jù)庫(kù)刪除員工信息</p><p>  Struts-config-employee.xml配置

110、文件:<struts-config><form-beans><form-bean name="employeeForm"type="jp.co.totyuedu.sksj.employee.form.EmployeeForm" /><form-bean name="employeeSearchForm"type="

111、;jp.co.totyuedu.sksj.employee.form.EmployeeSearchForm" /></form-beans></p><p>  <action-mappings> // 更新界面初始化<action path="/employee/updateInit" name="employeeForm&qu

112、ot; scope="request" validate="false"type="org.springframework.web.struts.DelegatingActionProxy"><forward name="success" path="/pages/jsp/employee/SY0004.jsp" /&g

113、t;<forward name="failure" path="/employee/select.do" /></action>// 更新界面模塊<action path="/employee/update" name="employeeForm" scope="request"validate=&

溫馨提示

  • 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ù)僅提供信息存儲(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)論