2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  畢業(yè)設(shè)計(jì)(論文)資料</p><p> 設(shè)計(jì)(論文)題目: 員工考勤管理系統(tǒng) </p><p><b>  摘 要</b></p><p>  隨著科技的迅速發(fā)展,各種管理系統(tǒng)已應(yīng)用到社會(huì)的各個(gè)領(lǐng)域。各個(gè)大小企業(yè)無(wú)論規(guī)模如何,都充分意識(shí)到傳統(tǒng)的手工管理模式已經(jīng)逐漸不能適

2、應(yīng)時(shí)代的發(fā)展,為了更好的發(fā)展,紛紛開(kāi)發(fā)適合自己的管理系統(tǒng)。</p><p>  通過(guò)員工考勤管理系統(tǒng)這個(gè)平臺(tái),可以實(shí)現(xiàn)員工考勤管理的信息化、網(wǎng)絡(luò)化、系統(tǒng)化、規(guī)范化,使工作人員從繁雜的數(shù)據(jù)查詢和統(tǒng)計(jì)中解脫出來(lái),減少工作量。系統(tǒng)的主要功能包括:部門信息管理、員工管理、請(qǐng)假申請(qǐng)、請(qǐng)假審核、員工出勤管理等。分為管理員用戶、員工用戶、部門經(jīng)理用戶這三種用戶平臺(tái)。</p><p>  本系統(tǒng)前臺(tái)主要使

3、用JSP作為開(kāi)發(fā)語(yǔ)言,后臺(tái)使用SqlServer作為數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)環(huán)境是MyEclipse,服務(wù)器采用tomcat,開(kāi)發(fā)出的一個(gè)基于Web技術(shù)的B/S結(jié)構(gòu)的員工考勤管理系統(tǒng)。</p><p>  關(guān)鍵詞:?jiǎn)T工考勤,JSP,B/S結(jié)構(gòu)</p><p><b>  ABSTRACT</b></p><p>  With the rapid d

4、evelopment of science and technology, all kinds of management systems have been applied to each field of the society. Various size enterprises regardless of size, are fully aware of the traditional manual management mode

5、 has not adapted to the development of the times, in order to better development, in development for the management system。</p><p>  Through the staff attendance management system this platform, can realize

6、the staff attendance management informatization, network, systematic, standardized, so that the staff from the complex data query and statistics out, reduce the workload. The main functions of the system include: Departm

7、ent of information management, staff management, application for leave, leave, staff attendance management, audit. As administrator, employee, department manager user user three user platform</p><p>  The fr

8、ont of the system using JSP as a development language, the use of SqlServer as a database management system, the development environment is MyEclipse, server using tomcat, developed a Web technology based on B / S struct

9、ure windows management system.</p><p>  Keywords: Staff attendance,JSP,B / S structure</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  ABST

10、RACTII</p><p><b>  第一章 緒論1</b></p><p><b>  1.1課題背景1</b></p><p>  1.2目的和意義1</p><p>  1.3開(kāi)發(fā)工具及技術(shù)1</p><p>  1.3.1開(kāi)發(fā)工具1</p>

11、<p>  1.3.2 JSP2</p><p>  1.3.3 JavaScript3</p><p>  1.4軟硬件需求4</p><p>  第二章 需求分析5</p><p><b>  2.1需求調(diào)研5</b></p><p>  2.2可行性分析5</

12、p><p>  2.2.1技術(shù)的可行性5</p><p>  2.2.2經(jīng)濟(jì)的可行性5</p><p>  2.2.3操作可行性5</p><p>  2.2.4法律的可行性6</p><p>  2.3系統(tǒng)用戶用例圖6</p><p>  2.3.1部門經(jīng)理用例圖6</p>

13、<p>  2.3.2管理員用例圖6</p><p>  2.3.3普通員工用例圖7</p><p>  2.4功能模塊需求分析7</p><p>  2.5設(shè)計(jì)的基本思想9</p><p>  2.6性能需求10</p><p>  2.6.1系統(tǒng)的安全性10</p><

14、p>  2.6.2數(shù)據(jù)的完整性10</p><p>  2.7界面需求10</p><p>  第三章 系統(tǒng)分析與設(shè)計(jì)11</p><p>  3.1數(shù)據(jù)庫(kù)的分析與設(shè)計(jì)11</p><p>  3.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)11</p><p>  3.1.2數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)14</p>

15、;<p>  3.1.3數(shù)據(jù)庫(kù)的連接原理17</p><p>  3.2中文亂碼問(wèn)題處理18</p><p>  第四章 系統(tǒng)功能實(shí)現(xiàn)19</p><p>  4.1系統(tǒng)登陸頁(yè)面實(shí)現(xiàn)20</p><p>  4.2管理員模塊23</p><p>  4.2.1部門信息管理23</p>

16、;<p>  4.2.2員工信息管理28</p><p>  4.2.3出勤管理31</p><p>  4.2.4修改密碼32</p><p>  4.2.5退出系統(tǒng)32</p><p>  4.3普通員工模塊32</p><p>  4.3.1請(qǐng)假申請(qǐng)32</p><p

17、>  4.3.2我的工資瀏覽33</p><p>  第五章 系統(tǒng)測(cè)試33</p><p>  5.1系統(tǒng)測(cè)試目的與意義33</p><p>  5.2測(cè)試過(guò)程34</p><p>  5.2.1主頁(yè)面的登錄模塊測(cè)試34</p><p>  5.3其他錯(cuò)誤34</p><p>

18、<b>  結(jié) 論35</b></p><p><b>  參考文獻(xiàn)36</b></p><p><b>  致 謝37</b></p><p><b>  第一章 緒論</b></p><p><b>  1.1課題背景</b&

19、gt;</p><p>  計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,給信息時(shí)代的人們帶來(lái)了很大的方便。如今在Internet上,隨處都可以看到種類繁多的信息管理系統(tǒng),比如,企業(yè)辦公化自動(dòng)管理系統(tǒng),電子商務(wù)系統(tǒng),高校教務(wù)管理系統(tǒng)等等。隨著信息技術(shù)的日益發(fā)展已深入到社會(huì)的各個(gè)角落,各個(gè)大的企業(yè),都充分意識(shí)到傳統(tǒng)的手工管理模式已經(jīng)逐漸不能適應(yīng)時(shí)代的發(fā)展,為了更好的發(fā)展,紛紛開(kāi)發(fā)適合自己的管理系統(tǒng)。不管大企業(yè)。各種員工信息的小企業(yè)也是如此

20、,企業(yè)的管理層也深深意識(shí)到這一點(diǎn),以前管理大多為手工管理,效率低、易出錯(cuò)、手續(xù)繁瑣,而且耗費(fèi)大量的人力,物力,財(cái)力。他們希望有一個(gè)適合自己的管理系統(tǒng),能夠?qū)崿F(xiàn)員工信息管理,部門管理,請(qǐng)假管理,考勤管理等功能。通過(guò)此系統(tǒng),管理者可以對(duì)員工的各項(xiàng)情況實(shí)行電腦化管理,這樣可以提高工作效率,也使得員工考勤管理所需的各項(xiàng)信息能方便快速進(jìn)行錄入,查詢,刪除和更新,對(duì)相應(yīng)關(guān)鍵數(shù)據(jù)也能夠方便的統(tǒng)計(jì)結(jié)果。 </p><p><

21、;b>  1.2目的和意義</b></p><p>  長(zhǎng)久以來(lái),企業(yè)員工考勤管理工作大多數(shù)都采用的是傳統(tǒng)的手工方式來(lái)記錄相關(guān)信息,這種管理方式存在很多缺點(diǎn),比如說(shuō),員工請(qǐng)假、審批等信息的錄入,查詢,更新,分析都要完全依賴管理人員的手工記錄和人工分析。對(duì)于小規(guī)模企業(yè)來(lái)說(shuō)還勉強(qiáng)可以接受,但對(duì)于規(guī)模大一點(diǎn)的企業(yè)來(lái)說(shuō),人工記錄是相當(dāng)麻煩的。為滿足企業(yè)發(fā)展需求,決定采用各種編程語(yǔ)言JSP開(kāi)發(fā)了基于B/S

22、架構(gòu)的員工考勤管理系統(tǒng),員工考勤管理系統(tǒng)是涉及信息科學(xué)、數(shù)據(jù)計(jì)算和計(jì)算機(jī)技術(shù)的復(fù)雜的人機(jī)交互系統(tǒng)。通過(guò)這些系統(tǒng),可以對(duì)員工考勤和管理進(jìn)行智能化管理,有效地記錄并查詢員工請(qǐng)假、出勤等情況,為企業(yè)的管理者提供了諸多方便。</p><p>  1.3開(kāi)發(fā)工具及技術(shù)</p><p><b>  1.3.1開(kāi)發(fā)工具</b></p><p>  此次設(shè)計(jì)主

23、要采用MyEclipse加Tomcat后臺(tái)服務(wù)器進(jìn)行,設(shè)計(jì)過(guò)程中頁(yè)面主要使用JSP技術(shù)完成,下面對(duì)MyEclipse、Tomcat和SqlServer數(shù)據(jù)庫(kù)進(jìn)行簡(jiǎn)要介紹。</p><p>  1.3.1.1 MyEclipse</p><p>  MyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其

24、是對(duì)各種開(kāi)元產(chǎn)品的支持十分不錯(cuò)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascrip

25、t, SQL, Hibernate。</p><p>  1.3.1.2 Tomcat </p><p>  Tomcat是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apahce服務(wù)器,可利用它響應(yīng)對(duì)HTML頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)

26、立運(yùn)行的,所以當(dāng)運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。</p><p>  1.3.1.3 SqlServer </p><p>  SqlServer使用C和C++編寫,并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、S

27、olaris、Windows等多種操作系統(tǒng);為多種編程語(yǔ)言提供了API;支持多線程,充分利用CPU資源;提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑;可以處理?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來(lái)說(shuō),SqlServer提供的功能已經(jīng)綽綽有余,而且由于SqlServer是開(kāi)放源碼軟件,因此可以大大降低總體擁有成本。</p><p><b>  1.3.2 JSP<

28、;/b></p><p>  JSP技術(shù)使用Java編程語(yǔ)言編寫類XML的tags和scriptlets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和scriptlets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。 </p><p>  Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí)

29、,首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端就是一個(gè)HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器

30、。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο螅哂衅脚_(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。JSP技術(shù)的優(yōu)點(diǎn):</p><p> ?。?)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。 </p><p>  (2)系統(tǒng)的多平臺(tái)支持?;旧峡梢栽谒衅脚_(tái)上的

31、任意環(huán)境中開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/.net的局限性是顯而易見(jiàn)的。 </p><p> ?。?)強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力。 </p><p> ?。?)多樣化和功能

32、強(qiáng)大的開(kāi)發(fā)工具支持。Java已經(jīng)有了許多非常優(yōu)秀的開(kāi)發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下</p><p>  (5)支持服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來(lái)支持,開(kāi)發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供web頁(yè)面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVA BEANS 組件來(lái)實(shí)現(xiàn)復(fù)雜商務(wù)功能。</p><p>  內(nèi)部對(duì)象說(shuō)明

33、:request 客戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù); response 網(wǎng)頁(yè)傳回客戶端的響應(yīng);pageContext 網(wǎng)頁(yè)的屬性是在這里管理; session 與請(qǐng)求有關(guān)的會(huì)話; application servlet正在執(zhí)行的內(nèi)容;out 用來(lái)傳送響應(yīng)的輸出流; config 代碼片段配置對(duì)象;page JSP網(wǎng)頁(yè)本身; exception 針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外</p><p>  

34、1.3.3 JavaScript</p><p>  JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript的一個(gè)重要功能就是面向?qū)ο蟮墓δ?,通過(guò)基于對(duì)象的程序設(shè)計(jì),可以用更直觀、模塊化和可重復(fù)使用的方式進(jìn)行程序開(kāi)發(fā)。在HTML基礎(chǔ)上,使用Javascript可以開(kāi)

35、發(fā)交互式Web網(wǎng)頁(yè)。Javascript的出現(xiàn)使得網(wǎng)頁(yè)和用戶之間實(shí)現(xiàn)了一種實(shí)時(shí)性的、動(dòng)態(tài)的、交互性的關(guān)系,使網(wǎng)頁(yè)包含更多活躍的元素和更加精彩的內(nèi)容。在本系統(tǒng)中很多地方使用了javascript技術(shù),比如說(shuō),檢驗(yàn)用戶輸入數(shù)據(jù)的有效性,是否重復(fù),是否為空等等。</p><p><b>  1.4軟硬件需求</b></p><p><b>  硬件需求:</

36、b></p><p>  CPU:Pentium以上計(jì)算機(jī)</p><p>  內(nèi)存: 512M以上</p><p><b>  軟件需求:</b></p><p>  操作系統(tǒng)版本:Windows XP /vista/Win7</p><p>  開(kāi)發(fā)工具:MyEclipse 6.0.1&

37、lt;/p><p>  后臺(tái)服務(wù)器:Apache Tomcat 6.0</p><p><b>  開(kāi)發(fā)語(yǔ)言:Java</b></p><p><b>  瀏覽器:IE6.0</b></p><p><b>  第二章 需求分析</b></p><p>&l

38、t;b>  2.1需求調(diào)研</b></p><p>  在項(xiàng)目的開(kāi)始是需求調(diào)研,并且走訪了一些小型的企業(yè),經(jīng)過(guò)一系列的調(diào)查與談話中發(fā)現(xiàn),現(xiàn)行的員工考勤管理工作還是存在著很多不足之處,手工記錄的方式不易保存,容易丟失,同樣也不利于數(shù)據(jù)的查詢和統(tǒng)計(jì)分析。根據(jù)企業(yè)的實(shí)際情況及調(diào)查結(jié)果,發(fā)現(xiàn)實(shí)現(xiàn)員工考勤管理的網(wǎng)絡(luò)化、信息化是十分有必要的,因此設(shè)計(jì)了本套員工考勤管理系統(tǒng)。</p><p

39、><b>  2.2可行性分析</b></p><p>  開(kāi)發(fā)任何一個(gè)系統(tǒng),都會(huì)受到時(shí)間和資源上的限制。因此,在每一個(gè)項(xiàng)目開(kāi)發(fā)之前,都要進(jìn)行可行性分析,可以減少項(xiàng)目的開(kāi)發(fā)風(fēng)險(xiǎn),避免人力、物力和財(cái)力的浪費(fèi)。下面就技術(shù)、經(jīng)濟(jì)、操作和法律四個(gè)方面來(lái)介紹。</p><p>  2.2.1技術(shù)的可行性</p><p>  本系統(tǒng)開(kāi)發(fā)工具是MyEc

40、lipse和SqlServer數(shù)據(jù)庫(kù),開(kāi)發(fā)語(yǔ)言是Java,主要使用了J2EE的技術(shù),java是一種面向?qū)ο缶幊陶Z(yǔ)言,簡(jiǎn)單易學(xué)而且靈活方便。大三時(shí)就學(xué)習(xí)了java課程,大四期間也系統(tǒng)的了解了J2EE的知識(shí),員工考勤管理系統(tǒng)總體上開(kāi)發(fā)難度不高,數(shù)據(jù)庫(kù)的設(shè)計(jì)和操作是本系統(tǒng)設(shè)計(jì)的核心。在大學(xué)期間學(xué)習(xí)過(guò)軟件工程,軟件測(cè)試,UML統(tǒng)一建模語(yǔ)言等課程,每個(gè)學(xué)期也會(huì)完成對(duì)應(yīng)的課程設(shè)計(jì),具備一定的系統(tǒng)分析、設(shè)計(jì)和測(cè)試能力。因此,完成系統(tǒng)實(shí)現(xiàn)在技術(shù)上完全具

41、有可行性。</p><p>  2.2.2經(jīng)濟(jì)的可行性</p><p>  如今是信息化時(shí)代,信息化管理可以使員工考勤管理工作更加系統(tǒng)化、快速化、全面化。這樣可以為企業(yè)帶來(lái)較高的工作效益和經(jīng)濟(jì)效益,在提高工作效率的基礎(chǔ)上,可以考慮減少員工考勤管理人員的數(shù)量,本系統(tǒng)對(duì)計(jì)算機(jī)配置的要求不高,企業(yè)機(jī)房更換下來(lái)的低配置電腦都可以完全滿足需要,再者,企業(yè)在管理工作上的高效率和便捷性遠(yuǎn)遠(yuǎn)超過(guò)了開(kāi)發(fā)本系

42、統(tǒng)的成本,所以在經(jīng)濟(jì)上具有完全的可行性。</p><p>  2.2.3操作可行性</p><p>  本系統(tǒng)操作簡(jiǎn)單,輸入信息頁(yè)面大多數(shù)都是下拉框的選擇形式,在某些頁(yè)面,信息可以自動(dòng)生成,無(wú)需輸入,時(shí)間的輸入也是用的日歷控件,操作簡(jiǎn)便,對(duì)操作人員的要求很低,只需對(duì)WINDOWS操作熟練,加之對(duì)本系統(tǒng)的操作稍加培訓(xùn)即可工作,而且本系統(tǒng)可視性非常好,所以在技術(shù)上不會(huì)有很大難度。</p&

43、gt;<p>  2.2.4法律的可行性</p><p>  本員工考勤管理系統(tǒng)是自行開(kāi)發(fā)的管理系統(tǒng),是很有實(shí)際意義的系統(tǒng),開(kāi)發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫(kù)都是開(kāi)源代碼,開(kāi)發(fā)這個(gè)系統(tǒng)不同于開(kāi)發(fā)普通的系統(tǒng)軟件,不存在侵權(quán)等問(wèn)題,即法律上是可行的。</p><p>  綜上所述,開(kāi)發(fā)一個(gè)員工考勤管理系統(tǒng)與人工記錄的方式相比具有速度更快,操作更準(zhǔn)確,節(jié)省開(kāi)支等有利之處,因此,建立一個(gè)員工

44、考勤管理系統(tǒng)是必要可行的。</p><p>  2.3系統(tǒng)用戶用例圖</p><p>  2.3.1部門經(jīng)理用例圖</p><p>  出于安全性的考慮,部門經(jīng)理用戶只有請(qǐng)假審核和出勤管理等功能,其他的刪除修改功能都沒(méi)有設(shè)計(jì)。部門經(jīng)理用例圖如圖2.1所示:</p><p>  圖2.1 部門經(jīng)理用例圖</p><p>

45、  2.3.2管理員用例圖</p><p>  管理員是系統(tǒng)的核心用戶,涉及到六大功能模塊,管理員對(duì)系統(tǒng)的所有用戶有著操作的權(quán)限,能夠及時(shí)動(dòng)態(tài)的掌握員工的各項(xiàng)情況。</p><p>  圖2.2 管理員用例圖</p><p>  2.3.3普通員工用例圖</p><p>  出于安全性的考慮,普通員工用戶只有請(qǐng)假申請(qǐng)和瀏覽出勤等功能,其他的刪

46、除修改功能都沒(méi)有設(shè)計(jì)。普通員工用例圖如圖2.1所示:</p><p>  圖2.1 普通員工用例圖</p><p>  2.4功能模塊需求分析</p><p>  本系統(tǒng)最大的特點(diǎn)是使用操作簡(jiǎn)單、友好的提示信息。本系統(tǒng)將實(shí)現(xiàn)以下基本功能:</p><p>  (1)系統(tǒng)具有簡(jiǎn)潔大方的頁(yè)面,使用簡(jiǎn)便,友好的錯(cuò)誤操作提示</p>&

47、lt;p> ?。?)管理員用戶具有做部門管理、員工信息管理、系統(tǒng)公告管理,修改個(gè)人密碼等功能</p><p> ?。?)部門經(jīng)理用戶具有請(qǐng)假審核、管理員工出勤等功能</p><p> ?。?)普通員工用戶具有請(qǐng)假申請(qǐng)、瀏覽出勤信息等功能</p><p> ?。?)具有較強(qiáng)的安全性,避免用戶的惡意操作</p><p>  系統(tǒng)的功能結(jié)構(gòu)圖

48、,分部門經(jīng)理平臺(tái)、管理員平臺(tái)、普通用戶。</p><p>  2.4 普通用戶功能模塊圖</p><p>  2.4 部門經(jīng)理用戶功能模塊圖</p><p>  圖2.3 管理員用戶功能模塊圖</p><p>  2.5設(shè)計(jì)的基本思想</p><p>  設(shè)計(jì)思想遵循以下幾點(diǎn):</p><p>

49、  1. 采用B/S模式進(jìn)行開(kāi)發(fā),其優(yōu)點(diǎn)是后臺(tái)與前臺(tái)處理層次分明,而且符合眾多已經(jīng)習(xí)慣網(wǎng)頁(yè)方式的用戶。</p><p>  2. 采用面向?qū)ο蟮拈_(kāi)發(fā)與設(shè)計(jì)理念。運(yùn)用面向?qū)ο蠹夹g(shù)的前提是對(duì)整體系統(tǒng)的高度和準(zhǔn)確抽象,通過(guò)它可以保證系統(tǒng)良好的框架,進(jìn)而帶來(lái)產(chǎn)品較強(qiáng)的穩(wěn)定性和運(yùn)行效率。</p><p>  3. 采用模塊化設(shè)計(jì)。模塊化設(shè)計(jì)要求將整個(gè)系統(tǒng)劃分成基于小的模塊,有利于代碼的重載,簡(jiǎn)化設(shè)計(jì)

50、和實(shí)現(xiàn)過(guò)程。</p><p>  4. 簡(jiǎn)單方便的系統(tǒng)界面。設(shè)計(jì)簡(jiǎn)單友好的系統(tǒng)界面,方便用戶較快的適應(yīng)系統(tǒng)的操作。</p><p>  5.速度優(yōu)先原則。由于此工具最重要的評(píng)測(cè)標(biāo)準(zhǔn)就是速度,因此在設(shè)計(jì)過(guò)程中,具體過(guò)程盡量做到資源占用少,速度快。</p><p>  6.設(shè)計(jì)既要突出重點(diǎn),又要細(xì)致周到。要符合設(shè)計(jì)需求,在有可能改進(jìn)的地方進(jìn)行擴(kuò)充,使系統(tǒng)更適應(yīng)用戶的需要

51、。</p><p><b>  2.6性能需求</b></p><p>  2.6.1系統(tǒng)的安全性</p><p>  員工考勤管理系統(tǒng)在管理權(quán)限上要嚴(yán)格進(jìn)行控制,具體要求如下:</p><p>  1.想登陸員工考勤管理系統(tǒng)進(jìn)行操作,必須有某些操作權(quán)限,沒(méi)有權(quán)限的用戶不能通過(guò)任何方式登錄系統(tǒng)查看系統(tǒng)的任何信息和數(shù)據(jù),以

52、確保系統(tǒng)的嚴(yán)密性和安全性。</p><p>  2.在具體實(shí)現(xiàn)中設(shè)定不同權(quán)限,不同權(quán)限用戶登錄到系統(tǒng)后,不能越級(jí)操作,管理員可以使使用所有模塊;部門經(jīng)理用戶只具有瀏覽功能。</p><p>  2.6.2數(shù)據(jù)的完整性</p><p>  1.各種記錄信息的完整性,信息記錄內(nèi)容不能為空</p><p>  2.各種數(shù)據(jù)間相互聯(lián)系的正確性<

53、/p><p>  3.相同數(shù)據(jù)在不同記錄中的一致性</p><p><b>  2.7界面需求</b></p><p>  界面設(shè)計(jì)目前已經(jīng)成為評(píng)價(jià)軟件質(zhì)量的一條重要指標(biāo),一個(gè)好的用戶界面可以增加用戶使用系統(tǒng)的信心和興趣,提高工作效率,JSP技術(shù)是用JAVA語(yǔ)言作為腳本語(yǔ)言的,JSP網(wǎng)頁(yè)為整個(gè)服務(wù)器端的JAVA庫(kù)單元提供了一個(gè)接口來(lái)服務(wù)于HTTP的

54、應(yīng)用程序。 創(chuàng)建動(dòng)態(tài)頁(yè)面非常方便。用戶界面是指軟件系統(tǒng)與用戶交互的接口,通常包括輸出、輸入、人-機(jī)對(duì)話的界面格式等。</p><p><b>  1.輸出設(shè)計(jì)</b></p><p>  輸出是由計(jì)算機(jī)對(duì)輸入的原始信息進(jìn)行加工處理,形成高質(zhì)量的有效信息,并使之具有一定的格式,提供管理者使用,這是輸出設(shè)計(jì)的主要職責(zé)和目標(biāo)。</p><p>  系

55、統(tǒng)設(shè)計(jì)的過(guò)程正好和實(shí)施過(guò)程相反,并不是從輸入設(shè)計(jì)到輸出設(shè)計(jì),而是從輸出設(shè)計(jì)到輸入設(shè)計(jì),這是因?yàn)檩敵霰砀裰苯优c使用者相聯(lián)系,設(shè)計(jì)的出發(fā)點(diǎn)應(yīng)當(dāng)是保證輸出表格方便地為使用者服務(wù),正確及時(shí)反映和組成用于各部門的有用信息。輸出設(shè)計(jì)的原則是考慮既要全面反映不同管理層的各項(xiàng)需要,又要言簡(jiǎn)意賅,不要將用戶需要和不需要的都提供給用戶。</p><p><b>  2.輸入設(shè)計(jì)</b></p>&

56、lt;p>  輸入數(shù)據(jù)的收集和錄入是比較費(fèi)事的,需要大量的人力和一定設(shè)備,并且容易出錯(cuò)。如果輸入系統(tǒng)的數(shù)據(jù)有錯(cuò)誤,則處理后的輸出將擴(kuò)大這些錯(cuò)誤,因此輸入數(shù)據(jù)的正確性對(duì)于整個(gè)系統(tǒng)質(zhì)量的好壞是具有決定性意義的。</p><p>  輸入設(shè)計(jì)的原則有如下幾點(diǎn):</p><p>  1)輸入量應(yīng)保持在能滿足處理要求的最低限度。設(shè)計(jì)中可采用設(shè)置字段初值,下拉式數(shù)據(jù)窗口等方式盡量減少用戶鍵盤輸入

57、量。輸入量越少,錯(cuò)誤率就越少,數(shù)據(jù)準(zhǔn)備時(shí)間也減少。</p><p>  2)輸入的準(zhǔn)備及輸入過(guò)程應(yīng)盡量容易進(jìn)行,從而減少錯(cuò)誤的發(fā)生。</p><p>  3)應(yīng)盡量早對(duì)輸入數(shù)據(jù)進(jìn)行檢查(盡量接近原數(shù)據(jù)發(fā)生點(diǎn)),以便使錯(cuò)誤及時(shí)得到更正。</p><p>  4)輸入數(shù)據(jù)盡早地用其處理所需的形式被記錄,以避免數(shù)據(jù)由一種介質(zhì)轉(zhuǎn)移到另一種介質(zhì)時(shí)需要轉(zhuǎn)錄而可能發(fā)生的錯(cuò)誤<

58、;/p><p>  第三章 系統(tǒng)分析與設(shè)計(jì)</p><p>  3.1數(shù)據(jù)庫(kù)的分析與設(shè)計(jì)</p><p>  計(jì)算機(jī)信息系統(tǒng)以數(shù)據(jù)庫(kù)為核心,在數(shù)據(jù)庫(kù)管理系統(tǒng)的支持下,進(jìn)行信息的收集、整理、存儲(chǔ)、檢索、更新、加工、統(tǒng)計(jì)和傳播等操作。數(shù)據(jù)庫(kù)已經(jīng)成為現(xiàn)在信息系統(tǒng)等計(jì)算機(jī)系統(tǒng)的基礎(chǔ)與核心部分。數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞直接影響到整個(gè)系統(tǒng)的質(zhì)量和效率。</p><p&g

59、t;  數(shù)據(jù)庫(kù)的設(shè)計(jì)一般經(jīng)過(guò)規(guī)劃。需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)5個(gè)步驟。</p><p>  3.1.1數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)</p><p>  概念設(shè)計(jì)是指在數(shù)據(jù)分析的基礎(chǔ)上自底向上的建立整個(gè)系統(tǒng)的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),從用戶的角度進(jìn)行視圖設(shè)計(jì),然后將視圖集成,最后對(duì)集成的結(jié)構(gòu)分析優(yōu)化得到最后結(jié)果。</p><p>  數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)采用實(shí)體—聯(lián)系(E-

60、R)模型設(shè)計(jì)方法。E-R模型法的組成元素有:實(shí)體、屬性、聯(lián)系,E-R模型用E-R圖表示,是提示用戶工作環(huán)境中所涉及的事物,屬性則是對(duì)實(shí)體特性的描述。</p><p>  概念設(shè)計(jì)的目標(biāo)是產(chǎn)生反映企業(yè)組織信息要求的數(shù)據(jù)庫(kù)概念結(jié)構(gòu),即概念模式。概念模式是獨(dú)立于數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu),獨(dú)立于支持?jǐn)?shù)據(jù)庫(kù)的DBMS,不依賴于計(jì)算機(jī)系統(tǒng)的,</p><p>  根據(jù)以上對(duì)數(shù)據(jù)庫(kù)的需求分析,并結(jié)合系統(tǒng)概念模型的

61、特點(diǎn)及建立方法,建立E-R模型圖。</p><p>  (1)員工信息實(shí)體E-R圖如圖3.5所示:</p><p>  圖3.1 員工信息實(shí)體E-R圖</p><p>  (2)部門信息實(shí)體E-R圖</p><p>  圖3.2 部門信息實(shí)體E-R圖</p><p>  (3)出勤信息E-R圖</p>&

62、lt;p>  圖3.3 出勤信息實(shí)體E-R圖</p><p>  (4)請(qǐng)假信息E-R圖</p><p>  圖3.4 請(qǐng)假信息實(shí)體E-R圖</p><p>  (5)公告信息E-R圖</p><p>  圖3.5 公告信息實(shí)體E-R圖</p><p>  (6)管理員信息E-R圖</p><

63、p>  圖3.6 管理員信息實(shí)體E-R圖</p><p>  3.1.2數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>  我們知道,數(shù)據(jù)庫(kù)概念模型獨(dú)立于任何特定的數(shù)據(jù)庫(kù)管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)進(jìn)行轉(zhuǎn)換。即轉(zhuǎn)化為按計(jì)算機(jī)觀點(diǎn)處理的邏輯關(guān)系模型,E-R模型向關(guān)系數(shù)據(jù)庫(kù)模型轉(zhuǎn)換應(yīng)遵循下列原則:</p><p>  *每一個(gè)實(shí)體要轉(zhuǎn)換成一個(gè)關(guān)系&

64、lt;/p><p>  *所有的主鍵必須定義非空(NOT NULL)</p><p>  *對(duì)于二元聯(lián)系應(yīng)按照一對(duì)多、弱對(duì)實(shí)、一對(duì)一、多對(duì)多等聯(lián)系來(lái)定義外鍵。</p><p>  根據(jù)E-R模型,員工考勤管理系統(tǒng)建立了以下邏輯數(shù)據(jù)結(jié)構(gòu),下面是各數(shù)據(jù)表的詳細(xì)說(shuō)明。</p><p>  (1)部門表主要是記錄了部門的基本信息。表結(jié)構(gòu)如表3.1所示。&

65、lt;/p><p>  表3.1部門表(t_organization)</p><p>  (2)員工信息表主要是記錄了員工的基本信息,表結(jié)構(gòu)如圖3.2所示。</p><p>  表3.2員工信息表(t_yuangong)</p><p>  (3)出勤信息表主要是記錄了員工出勤的基本信息,表結(jié)構(gòu)如圖3.3所示。</p><p

66、>  表3.3出勤信息表(t_chuqin)</p><p>  (4)請(qǐng)假信息表主要記錄了員工的請(qǐng)假信息,表如圖3.4所示。</p><p>  表3.4請(qǐng)假信息表(t_qingjia)</p><p>  (5)公告信息表主要是管理發(fā)布的公告訂單信息,表結(jié)構(gòu)如圖3.5所示。</p><p>  表3.5公告信息表(t_gonggao

67、)</p><p>  (7)管理員信息表主要記錄的管理員的賬號(hào)信息,包括用戶名和密碼,表結(jié)構(gòu)如表3.7所示。</p><p>  表3.7管理員信息表(t_admin)</p><p>  3.1.3數(shù)據(jù)庫(kù)的連接原理</p><p>  采用JDBC連接數(shù)據(jù)庫(kù)的方式,只需在工程中導(dǎo)入對(duì)應(yīng)數(shù)據(jù)庫(kù)的jar包,就可以方便的對(duì)數(shù)據(jù)庫(kù)進(jìn)行連接,在程序

68、中,用Class.forName()方法來(lái)加載驅(qū)動(dòng)程序,在用DriverManager的getConnection()方法就可以創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)連接。程序采用的是DAO模式來(lái)操作數(shù)據(jù)庫(kù),DAO(Data Access Object,數(shù)據(jù)訪問(wèn)對(duì)象),是Java編程中的一種經(jīng)典模式,已被廣泛應(yīng)用,也是J2EE架構(gòu)中持久層框架的基礎(chǔ)知識(shí),基于分層次式的軟件架構(gòu)來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)操作。DAO模式的主要思想就是從抽象數(shù)據(jù)源獲取與操縱數(shù)據(jù)的方法。抽

69、象數(shù)據(jù)的含義就是編寫應(yīng)用程序的程序員不必關(guān)心數(shù)據(jù)庫(kù)的物理位置,已經(jīng)是何種數(shù)據(jù)庫(kù),只需使用封裝數(shù)據(jù)庫(kù)中表示記錄的數(shù)據(jù)對(duì)象即可。其思想如圖3.10所示:</p><p>  圖3.10 DAO模式類圖 </p><p>  圖中BussinessObject是業(yè)務(wù)對(duì)象,是使用DAO模式的客戶端;DataTransferObject數(shù)據(jù)傳輸對(duì)象,在應(yīng)用程序不同層次之間傳輸對(duì)象,在一個(gè)分布式應(yīng)用

70、程序中,通??梢蕴岣哒淼男阅?;DataObjectAcces數(shù)據(jù)輸入/輸出對(duì)象封裝了對(duì)數(shù)據(jù)源的一些基本操作;DataSource指的是數(shù)據(jù)源??梢詮膱D中看出,DAO模式分離了業(yè)務(wù)邏輯和數(shù)據(jù)羅即將,是的編寫的軟件具有良好的層次式體系結(jié)構(gòu)。本系統(tǒng)為了方便數(shù)據(jù)庫(kù)的操作,主要使用DBContent的對(duì)象來(lái)接一個(gè)數(shù)據(jù)庫(kù)(建立一個(gè)類DBContent),代碼如下:</p><p>  public DBContent(){

71、</p><p>  String CLASSFORNAME="com.SqlServer.jdbc.Driver";//連接數(shù)據(jù)庫(kù)的驅(qū)動(dòng)</p><p>  String url="jdbc:SqlServer://localhost:3306/gy1";</p><p>  String user="root&q

72、uot;;//連接數(shù)據(jù)庫(kù)的用戶名</p><p>  String password="root";//連接數(shù)據(jù)庫(kù)的密碼</p><p><b>  try{</b></p><p>  Class.forName(CLASSFORNAME);</p><p>  con= DriverManager

73、.getConnection(url,user,password);//加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)</p><p>  stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);</p><p><b>  }</b></p><p>  ca

74、tch(Exception ex){</p><p>  ex.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p>  在程序需要連接數(shù)據(jù)庫(kù)的地方,只需要生成一個(gè)DBConnet的對(duì)象,就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行連接并操作。

75、</p><p>  3.2中文亂碼問(wèn)題處理</p><p>  在程序中經(jīng)常會(huì)遇到中文亂碼的情況,如果手動(dòng)的在servlet和jsp頁(yè)面進(jìn)行設(shè)置,相當(dāng)麻煩。因此,在程序的開(kāi)始就寫了一個(gè)過(guò)濾器SetCharacterEncodingFilter。</p><p>  在web.xml中配置:</p><p><b>  <fi

76、lter></b></p><p>  <filter-name>SetCharacterEncodingFilter</filter-name></p><p>  <filter-class>myweb.util.filter.SetCharacterEncodingFilter</filter-class></p

77、><p>  <init-param></p><p>  <param-name>encoding</param-name></p><p>  <param-value>gb2312</param-value></p><p>  </init-param></p&

78、gt;<p><b>  </filter></b></p><p>  <filter-mapping></p><p>  <filter-name>SetCharacterEncodingFilter</filter-name></p><p>  <url-patter

79、n>/*</url-pattern>//*表示工程下所有的頁(yè)面都會(huì)有此過(guò)濾器的處理</p><p>  </filter-mapping></p><p>  對(duì)應(yīng)的SetCharacterEncodingFilter.java文件中的重要代碼,在初始化init()方法中定義:</p><p>  public void init(Fi

80、lterConfig filterConfig) throws ServletException {</p><p>  this.filterConfig = filterConfig;</p><p>  this.encoding = filterConfig.getInitParameter("encoding");</p><p>  

81、String value = filterConfig.getInitParameter("ignore");</p><p><b>  }</b></p><p>  在工具包util包中同樣定義了DataFormate類來(lái)處理字符轉(zhuǎn)換:</p><p>  public static String toUni(Stri

82、ng gbStr){</p><p>  String uniStr = ""; /*把字符串轉(zhuǎn)換成uincode編碼*/</p><p>  if(gbStr == null){</p><p>  gbStr = "";</p><p><b>  }</b></p>

83、;<p><b>  try{</b></p><p>  byte[] tempByte = gbStr.getBytes("GB2312");</p><p>  uniStr = new String(tempByte,"ISO8859_1");</p><p>  }catch(Ex

84、ception ex){</p><p><b>  }</b></p><p>  return uniStr;</p><p><b>  }</b></p><p>  /* 把字符串轉(zhuǎn)換成Utf8編碼*/</p><p>  public static String

85、toUtf8String(String s) {</p><p>  StringBuffer sb = new StringBuffer();</p><p>  for (int i = 0; i < s.length(); i++) {</p><p>  char c = s.charAt(i);</p><p>  if (c

86、 >= 0 && c <= 255) {</p><p>  sb.append(c);</p><p><b>  }</b></p><p><b>  else {</b></p><p><b>  byte[] b;</b></p&g

87、t;<p><b>  try {</b></p><p>  b = Character.toString(c).getBytes("utf-8");</p><p>  }catch (Exception ex) {</p><p>  System.out.println(ex);</p>

88、<p>  b = new byte[0];</p><p><b>  }</b></p><p>  for (int j = 0; j < b.length; j++) {</p><p>  int k = b[j];</p><p>  if (k < 0) {</p>&l

89、t;p><b>  k += 256;</b></p><p><b>  }</b></p><p>  sb.append("%" + Integer.toHexString(k).</p><p>  toUpperCase()); } }</p><p>  re

90、turn sb.toString(); }</p><p><b>  }</b></p><p>  第四章 系統(tǒng)功能實(shí)現(xiàn)</p><p>  在管理信息系統(tǒng)的生命周期中,僅過(guò)了需求分析、系統(tǒng)設(shè)計(jì)等階段之后,便開(kāi)始了系統(tǒng)實(shí)施階段。在系統(tǒng)分析和設(shè)計(jì)階段,系統(tǒng)開(kāi)發(fā)工作主要是集中在邏輯、功能和技術(shù)設(shè)計(jì)上,系統(tǒng)實(shí)施階段要繼承此前面各個(gè)階段的工作成果

91、,將技術(shù)設(shè)計(jì)轉(zhuǎn)化為物理實(shí)現(xiàn),因此系統(tǒng)實(shí)施的成果是系統(tǒng)分析和設(shè)計(jì)階段的結(jié)晶。</p><p>  4.1系統(tǒng)登陸頁(yè)面實(shí)現(xiàn)</p><p>  1.描述:為了保證系統(tǒng)的安全性,要先使用本系統(tǒng)必須先登陸到系統(tǒng)中,并且不同角色的用戶進(jìn)入不同的界面,功能也隨之不同。</p><p>  2.程序運(yùn)行效果圖如圖4.1所示:</p><p>  圖4.1

92、系統(tǒng)登陸頁(yè)面設(shè)計(jì)</p><p>  3.在登陸頁(yè)面輸入用戶名和密碼以,選擇登陸身份后,點(diǎn)擊提交按鈕,跳轉(zhuǎn)到登陸的service中,在該service中會(huì)對(duì)用戶名,密碼,驗(yàn)證碼進(jìn)行判斷,并根據(jù)相應(yīng)的用戶角色進(jìn)入對(duì)應(yīng)的頁(yè)面,loginservice關(guān)鍵代碼:</p><p>  public String login(String userName,String userPw,int use

93、rType)</p><p><b>  {</b></p><p>  System.out.println("userType"+userType);</p><p><b>  try</b></p><p><b>  {</b></p>

94、<p>  Thread.sleep(700);</p><p>  } catch (InterruptedException e)</p><p><b>  {</b></p><p>  // TODO Auto-generated catch block</p><p>  e.printStac

95、kTrace();</p><p><b>  }</b></p><p>  String result="no";</p><p>  if(userType==0)//系統(tǒng)管理員登陸</p><p><b>  {</b></p><p>  Str

96、ing sql="select * from t_admin where userName=? and userPw=?";</p><p>  Object[] params={userName,userPw};</p><p>  DB mydb=new DB();</p><p>  mydb.doPstm(sql, params);<

97、;/p><p><b>  try </b></p><p><b>  {</b></p><p>  ResultSet rs=mydb.getRs();</p><p>  boolean mark=(rs==null||!rs.next()?false:true);</p><

98、;p>  if(mark==false)</p><p><b>  {</b></p><p>  result="no";</p><p><b>  }</b></p><p><b>  else</b></p><p>

99、;<b>  {</b></p><p>  result="yes";</p><p>  TAdmin admin=new TAdmin();</p><p>  admin.setUserId(rs.getInt("userId"));</p><p>  admin.set

100、UserName(rs.getString("userName"));</p><p>  admin.setUserPw(rs.getString("userPw"));</p><p>  WebContext ctx = WebContextFactory.get(); </p><p>  HttpSession se

101、ssion=ctx.getSession(); </p><p>  session.setAttribute("userType", 0);</p><p>  session.setAttribute("admin", admin);</p><p><b>  }</b></p>&l

102、t;p>  rs.close();</p><p><b>  } </b></p><p>  catch (SQLException e)</p><p><b>  {</b></p><p>  System.out.println("登錄失??!");</p&

103、gt;<p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p><p>  mydb.closed();</p>

104、<p><b>  }</b></p><p><b>  }</b></p><p>  if(userType==1)</p><p><b>  {</b></p><p>  String sql="select * from t_yuangong

105、where del='no' and loginname=? and loginpw=?";</p><p>  Object[] params={userName,userPw};</p><p>  DB mydb=new DB();</p><p>  mydb.doPstm(sql, params);</p><

106、p><b>  try </b></p><p><b>  {</b></p><p>  ResultSet rs=mydb.getRs();</p><p>  boolean mark=(rs==null||!rs.next()?false:true);</p><p>  if(ma

107、rk==false)</p><p><b>  {</b></p><p>  result="no";</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {

108、</b></p><p>  result="yes";</p><p>  Yuangong yuangong=new Yuangong();</p><p>  yuangong.setId(rs.getInt("id"));</p><p>  yuangong.setBianhao(

109、rs.getString("bianhao"));</p><p>  yuangong.setName(rs.getString("name"));</p><p>  yuangong.setSex(rs.getString("sex"));</p><p>  yuangong.setShifoubu

110、menlingdao(rs.getString("shifoubumenlingdao"));</p><p>  yuangong.setLoginname(rs.getString("loginname"));</p><p>  yuangong.setLoginpw(rs.getString("loginpw"));<

111、;/p><p>  yuangong.setOrg_id(rs.getInt("org_id"));</p><p>  yuangong.setDel(rs.getString("del"));</p><p>  WebContext ctx = WebContextFactory.get(); </p><

112、;p>  HttpSession session=ctx.getSession(); </p><p>  session.setAttribute("userType", 1);</p><p>  session.setAttribute("yuangong", yuangong);</p><p><b>

113、;  }</b></p><p>  rs.close();</p><p><b>  } </b></p><p>  catch (SQLException e)</p><p><b>  {</b></p><p>  System.out.printl

114、n("登錄失??!");</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p><p>

115、  mydb.closed();</p><p><b>  } </b></p><p><b>  4.2管理員模塊</b></p><p>  1.描述:管理員主頁(yè)面:左方頁(yè)面展示了管理員可操作的五大功能,進(jìn)入相關(guān)的管理頁(yè)面可以鏈接到子菜單,并且高亮顯示,每個(gè)管理模塊下面都有相應(yīng)的子菜單。</p>&l

116、t;p>  2.程序運(yùn)行效果圖如圖4.2所示:</p><p>  圖4.2管理員主頁(yè)面</p><p>  在每個(gè)jsp頁(yè)面將會(huì)對(duì)相關(guān)用戶進(jìn)行攔截操作,這樣可以提高安全性,防止用戶不經(jīng)過(guò)登陸頁(yè)面而進(jìn)入任何子菜單頁(yè)面:</p><p>  if(session.getAttribute("user")==null)</p>&

117、lt;p><b>  {</b></p><p>  out.print("<script>alert('請(qǐng)先登錄!');window.open('../index.jsp','_self')</script>"); </p><p><b>  }</

118、b></p><p>  4.2.1部門信息管理</p><p>  4.2.1.1部門信息錄入</p><p>  描述:管理員輸入部門相關(guān)正確信息后點(diǎn)擊錄入按鈕,如果是沒(méi)有輸入完整的部門經(jīng)理信息,都會(huì)給出相應(yīng)的錯(cuò)誤提示,不能錄入成功。輸入數(shù)據(jù)都通過(guò)form表單中定義的方法onsubmit="return checkForm()"來(lái)檢查,

119、checkForm()函數(shù)中是各種的校驗(yàn)輸入數(shù)據(jù)的方式。</p><p>  程序效果圖如下圖4.3所示:</p><p>  圖4.3 部門信息錄入</p><p>  3.流程圖如下圖4.4所示:</p><p>  圖4.4 部門經(jīng)理信息錄入流程圖</p><p>  4.2.1.2部門信息管理</p>

120、;<p>  1.描述:管理員點(diǎn)擊左側(cè)的菜單“部門管理”,頁(yè)面跳轉(zhuǎn)到部門管理界面,調(diào)用后臺(tái)的servlet類查詢所有部門經(jīng)理。</p><p>  2.程序效果圖如下圖4.5所示</p><p>  圖4.5 部門經(jīng)理信息管理</p><p><b>  部門管理關(guān)鍵代碼:</b></p><p>  pu

121、blic void orgMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException</p><p><b>  {</b></p><p>  List orgList=new ArrayList();</p><p>  

122、String sql="select * from t_organization where del='no'";</p><p>  Object[] params={};</p><p>  DB mydb=new DB();</p><p><b>  try</b></p><p&

123、gt;<b>  {</b></p><p>  mydb.doPstm(sql, params);</p><p>  ResultSet rs=mydb.getRs();</p><p>  while(rs.next())</p><p><b>  {</b></p><

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論