




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、周云蔚的畢業(yè)設(shè)計(jì) 作者: 日期:2 個(gè)人收集整理 勿做商業(yè)用途基于B/S模式的“員工信息管理”的設(shè)計(jì)與實(shí)現(xiàn)摘要為了方便信息的管理和員工自我信息查詢,在結(jié)合動(dòng)態(tài)服務(wù)網(wǎng)頁(yè)(JSP)、Extjs庫(kù)和MYSQL配合Hibernate 技術(shù)之下開發(fā)了這個(gè)快截、界面友好的網(wǎng)上信息管理網(wǎng)站.該網(wǎng)站使用動(dòng)態(tài)服務(wù)網(wǎng)頁(yè)(JSP)技術(shù)建設(shè)MIS系統(tǒng)的骨干框架,使用MYSQL制作網(wǎng)站的數(shù)據(jù)庫(kù),使用EXT制作網(wǎng)站前臺(tái)界面,實(shí)現(xiàn)了一個(gè)功能相對(duì)齊全的信息管理網(wǎng)站,用戶可以自由地修改信息,請(qǐng)假以及發(fā)送公文進(jìn)行交流溝通。使用Extjs最大的好處是不需要設(shè)計(jì)前臺(tái)界面等復(fù)雜的MVC中view部分。極大的減輕了開發(fā)難度,是開發(fā)者專注
2、于功能實(shí)現(xiàn)和數(shù)據(jù)操作。使得網(wǎng)站的MVC架構(gòu)得到充分的分離,降低了耦合性,系統(tǒng)更加規(guī)范。該MIS系統(tǒng)功能齊全,在這里可以自由地發(fā)送內(nèi)部公文進(jìn)行實(shí)時(shí)交流和文件上傳共享,我們還可以對(duì)員工的問(wèn)題意見及時(shí)地解決.該系統(tǒng)還有一些特殊的功能,強(qiáng)大的用戶界面等。關(guān)鍵詞: 動(dòng)態(tài)服務(wù)網(wǎng)頁(yè); MIS; 用戶管理;網(wǎng)站50Employee Info Management System Based on B/SAbstractOneself information has inquired about the administration and employee for convenient information
3、, development has developed this approximately section under Java Server Page (JSP) and the MYSQL technology , information administration has covered a station as with a net on amicable net of interface in union。 Have been websites turn to use development to serve the systematic backbone of Java Ser
4、ver Page (JSP) technology construction MIS frame , have used MYSQL to make the website data base , have realized a function information administration relatively all in readiness website, the consumer can revise information freely , ask for leave as well as the sending official document carries out
5、exchange communicate with。 Use extjs the greatest advantage is not required to design the interface and complexity of the mvc. in view of the development of difficulty, the developers to realize the functions and operations。 the site of the mvc architecture and the coupling, the system more standard
6、ized.That MIS system function is all in readiness, before here can dispatch the internal official document freely carrying out real time exchange and the document upload share, we can check employees problem the idea is timely solve. Be systems turn to still have some peculiar functions, the consume
7、r interface big and powerful waits.本文為互聯(lián)網(wǎng)收集,請(qǐng)勿用作商業(yè)用途個(gè)人收集整理,勿做商業(yè)用途Key words: Java Server Pages; MYSQL; User management; Web site 目 錄1緒論12 網(wǎng)站開發(fā)技術(shù)介紹22.1課題背景22.2國(guó)內(nèi)外研究現(xiàn)狀22。3本課題研究的意義32.4JSP技術(shù)簡(jiǎn)介42。5 Extjs技術(shù)簡(jiǎn)介42.6 Hibernate技術(shù)簡(jiǎn)介42.7 DWR 技術(shù)簡(jiǎn)介42。8 Mysql技術(shù)簡(jiǎn)介52。9 Jetty技術(shù)簡(jiǎn)介52.10 Comet技術(shù)簡(jiǎn)介63 需求分析和可行性分析73。1 需求分析73.
8、1.1 網(wǎng)站說(shuō)明73.1.2 論壇網(wǎng)站總體分析73.1.3 功能流程圖83.1.4 功能流程圖83。2 可行性分析93。2.1 基本性能93。2.2 開發(fā)目標(biāo)93。3 數(shù)據(jù)庫(kù)設(shè)計(jì)思想93。3.1 數(shù)據(jù)表的設(shè)計(jì)103。4 小結(jié)114 詳細(xì)設(shè)計(jì)134。1 各模塊設(shè)計(jì)134.1.1 用戶注冊(cè)登錄功能134。1.2 修改個(gè)人信息功能154.1.3 請(qǐng)假功能154.1.4 用戶查看假期申請(qǐng)批示功能164。1。5 發(fā)送公文功能164。1。6 用戶查看公文箱功能174。1。7 文件上傳功能184。1。8 查看文件上傳箱功能184.1.9 管理員登錄功能194.1。10 管理員管理信息功能194.1.11 管
9、理員批復(fù)請(qǐng)假信息功能204。2 詳細(xì)的代碼設(shè)計(jì)204。2。1 前臺(tái)功能頁(yè)面204.2。2 后臺(tái)功能頁(yè)面214。2.3 數(shù)據(jù)庫(kù)的連接214.2.4 用戶登陸與注冊(cè)模塊的實(shí)現(xiàn)224。2.5 用戶請(qǐng)假申請(qǐng)模塊實(shí)現(xiàn)244。2.6 用戶信息CRUD模塊實(shí)現(xiàn)244。2.7 發(fā)送公文模塊的實(shí)現(xiàn)254。2。8 登錄模塊的前臺(tái)實(shí)現(xiàn)264。3 小結(jié)395 系統(tǒng)測(cè)試40結(jié) 論41致 謝42參考文獻(xiàn)43附錄1 外文參考文獻(xiàn)(譯文)44附錄2 外文參考文獻(xiàn)(原文)471 緒論B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)
10、構(gòu)下,用戶工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。相對(duì)于C/S結(jié)構(gòu)屬于“胖"客戶端,需要在使用者電腦上安裝相應(yīng)的操作軟件來(lái)說(shuō),B/S結(jié)構(gòu)是屬于一種“瘦"客戶端,大多數(shù)或主要的業(yè)務(wù)邏輯都存在在服務(wù)器端,因此,B/S結(jié)構(gòu)的系統(tǒng)不需要安裝客戶端軟件,它運(yùn)行在客戶端的瀏覽器之上,系統(tǒng)升級(jí)或維護(hù)時(shí)只需更新服務(wù)器端軟件即可,這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。 B/S結(jié)構(gòu)系統(tǒng)的產(chǎn)生為系統(tǒng)面對(duì)無(wú)限未知用戶提供
11、了可能.當(dāng)然,與C/S結(jié)構(gòu)相比,B/S結(jié)構(gòu)也存在著系統(tǒng)運(yùn)行速度較慢,訪問(wèn)系統(tǒng)的用戶不可控的弱點(diǎn).以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet/Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的.它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在JAVA這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。要實(shí)現(xiàn)這樣的功能,離不開后臺(tái)數(shù)據(jù)庫(kù)的支持.本系統(tǒng)中使用了Myeclips
12、e中自帶的Hibernate3.2作為前臺(tái)和后臺(tái)的中間件開發(fā)數(shù)據(jù)庫(kù)和操作數(shù)據(jù)庫(kù)。本文中數(shù)據(jù)庫(kù)服務(wù)器端采用了MYSQL5.0數(shù)據(jù)庫(kù)并以先進(jìn)的Hibernate API技術(shù)進(jìn)行數(shù)據(jù)庫(kù)CRUD等操作,使Web與數(shù)據(jù)庫(kù)高內(nèi)聚低耦合起來(lái)。本設(shè)計(jì)主要完成Web服務(wù)器端的用戶自我管理、管理員管理、數(shù)據(jù)庫(kù)管理、瀏覽和查找功能等設(shè)計(jì)、實(shí)現(xiàn)與完善以及整個(gè)實(shí)驗(yàn)網(wǎng)站的組織建立和壓力測(cè)試工作.2 網(wǎng)站開發(fā)技術(shù)介紹2。1課題背景隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,起強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。今天,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。它已經(jīng)被應(yīng)用于許
13、多領(lǐng)域,計(jì)算機(jī)之所以如此看重的原因主要有以下幾個(gè)方面: 首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng); 其次,計(jì)算機(jī)可以節(jié)省許多資源; 第三,計(jì)算機(jī)可以大大的提高人們的工作效率; 第四,計(jì)算機(jī)可以使敏感文檔更加安全,等等. 在企業(yè)中用計(jì)算機(jī)管理信息的意義;現(xiàn)在,有很多企業(yè)的信息管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣機(jī)制已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時(shí)代這樣傳統(tǒng)的管理方法必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。 作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些有點(diǎn)能
14、夠極大的提高員工信息管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件. JSP簡(jiǎn)單易學(xué)且功能豐富,是廣泛應(yīng)用的計(jì)算機(jī)語(yǔ)言之一,它的發(fā)展為編程人員提供了更廣泛的空間。作為前端應(yīng)用程序開發(fā)環(huán)境的JSP 在數(shù)據(jù)來(lái)源的維護(hù)、數(shù)據(jù)訪問(wèn)技術(shù)、國(guó)際網(wǎng)絡(luò)可企業(yè)內(nèi)部Internet應(yīng)用程序等功能方面都有其獨(dú)到之處。2.2國(guó)內(nèi)外研究現(xiàn)狀當(dāng)今社會(huì)是一個(gè)信息社會(huì),一個(gè)只是經(jīng)濟(jì)時(shí)代。自世界上第一臺(tái)計(jì)算機(jī)ENINC(Electronic numerical integrator and calculator)于1964年在美國(guó)問(wèn)世到現(xiàn)在,計(jì)算機(jī)業(yè)飛速發(fā)展,技術(shù)淘汰指標(biāo)高的驚人,價(jià)格下降以及軟件應(yīng)用的快速擴(kuò)展
15、引發(fā)了以信息處理計(jì)算機(jī)化為標(biāo)志的“微機(jī)革命”,隨之而來(lái)的是以全球信息網(wǎng)絡(luò)普及和全球信息共享為標(biāo)志的“全球信息網(wǎng)絡(luò)革命”的蓬勃興起??梢娛澜缫堰M(jìn)入在計(jì)算機(jī)信息管理領(lǐng)域中激烈競(jìng)爭(zhēng)的時(shí)代,計(jì)算機(jī)已經(jīng)變得普通的不能在普通的工具,如同我們離不開的自行車、汽車一樣。我們應(yīng)該承認(rèn),誰(shuí)掌握的知識(shí)多,信息量大,信息處理速度快,批量大,誰(shuí)的效率就高,誰(shuí)就能在各種競(jìng)爭(zhēng)中立于不敗之地。 自20世紀(jì)50年代將計(jì)算機(jī)引入數(shù)據(jù)處理以來(lái),歷經(jīng)管理信息系統(tǒng)發(fā)展的各個(gè)階段。一方面時(shí)候信息技術(shù)應(yīng)用的迅猛發(fā)展,為社會(huì)節(jié)省了大量花在信息管理上的人力、物力、財(cái)力,信息管理系統(tǒng)作為一門融管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)為主要方面,以人力為主導(dǎo)
16、,利用計(jì)算機(jī)硬件、軟件、網(wǎng)絡(luò)通信設(shè)備辦公設(shè)備,進(jìn)行信息的收集、傳輸、加工、存儲(chǔ)、更新和維護(hù),以及提高企業(yè)效率為目的的一種集成化的人機(jī)系統(tǒng)。 員工信息管理系統(tǒng)是一個(gè)企業(yè)單位不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以檔案管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑蜁?huì)計(jì)的查詢手段。但一直以來(lái)人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。2。3本課題研究的意義一個(gè)現(xiàn)代化的公司,擁有數(shù)千名的員工,那么如何刮泥這么龐大的職工信息檔案呢?這時(shí),開發(fā)一個(gè)功能完善的職工信息
17、管理系統(tǒng)就必不可少了.所以需要設(shè)計(jì)開發(fā)實(shí)現(xiàn)職工信息查詢、管理、更新為基本目標(biāo)的系統(tǒng)。從職工信息的查詢到管理實(shí)現(xiàn)了自動(dòng)化的模式,從而提高了工作效率. 員工信息管理系統(tǒng)是一個(gè)企業(yè)單位不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以信息管理系統(tǒng)能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?用ASP構(gòu)建的企業(yè)員工信息管理系統(tǒng),能實(shí)現(xiàn)員工信息的錄入、修改、查詢、刪除、查找、編輯、等功能,此外,在程序中還設(shè)計(jì)了用戶登錄,設(shè)定了密碼,并由MD5加密,以確保系統(tǒng)應(yīng)用的安全性。本管理系統(tǒng)設(shè)計(jì)合理、界面美觀、操作方便、運(yùn)行穩(wěn)定,為進(jìn)行現(xiàn)代化的企業(yè)員工信息管理工作起到了重要作用,具有較高的使用價(jià)值。
18、2。4JSP技術(shù)簡(jiǎn)介JSP是服務(wù)器端的腳本語(yǔ)言,是以SERVLET為基礎(chǔ)開發(fā)而成的動(dòng)態(tài)網(wǎng)頁(yè)生成技術(shù),它的底層實(shí)現(xiàn)是JAVA SERVLET。JSP(JAVA SERVER PAGE)由HTML代碼、CSS樣式的修飾和潛入其中的JAVA代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些代碼進(jìn)行處理,然后將生產(chǎn)的HTML頁(yè)面返回客戶端的瀏覽器JSP的特點(diǎn)是面向?qū)ο蟆?跨平臺(tái)、 和SERVLET一樣穩(wěn)定、 可以使用SERVLET提供的API,同時(shí)克服了SERVLET的缺點(diǎn)。在使用JSP時(shí)一般和POJOS結(jié)合使用,從而將界面表現(xiàn)和業(yè)務(wù)邏輯分離.2.5 Extjs技術(shù)簡(jiǎn)介ExtJS可以用來(lái)開發(fā)RIA也即富客
19、戶端的AJAX應(yīng)用,是一個(gè)用javascript寫的,主要用于創(chuàng)建前端用戶界面,是一個(gè)與后臺(tái)技術(shù)無(wú)關(guān)的前端ajax框架。因此,可以把ExtJS用在.Net、Java、Php等各種開發(fā)語(yǔ)言開發(fā)的應(yīng)用中。ExtJs最開始基于YUI技術(shù),由開發(fā)人員JackSlocum開發(fā),通過(guò)參考JavaSwing等機(jī)制來(lái)組織可視化組件,無(wú)論從UI界面上CSS樣式的應(yīng)用,到數(shù)據(jù)解析上的異常處理,都可算是一款不可多得的JavaScript客戶端技術(shù)的精品。Ext的UI組件模型和開發(fā)理念脫胎、成型于Yahoo組件庫(kù)YUI和Java平臺(tái)上Swing兩者,并為開發(fā)者屏蔽了大量跨瀏覽器方面的處理。相對(duì)來(lái)說(shuō),EXT要比開發(fā)者直
20、接針對(duì)DOM、W3C對(duì)象模型開發(fā)UI組件輕松。2.6 Hibernate技術(shù)簡(jiǎn)介Hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。2.7 DWR 技術(shù)簡(jiǎn)介DWR(Direct Web Remoting)是一個(gè)開源的類庫(kù),可以幫助開發(fā)人員開發(fā)包含AJAX技
21、術(shù)的網(wǎng)站。它可以允許在瀏覽器里的代碼使用運(yùn)行在WEB服務(wù)器上的JAVA函數(shù),就像它就在瀏覽器里一樣。它包含兩個(gè)主要的部分:允許JavaScript從WEB服務(wù)器上一個(gè)遵循了AJAX原則的Servlet中獲取數(shù)據(jù)。另外一方面一個(gè)JavaScript庫(kù)可以幫助網(wǎng)站開發(fā)人員輕松地利用獲取的數(shù)據(jù)來(lái)動(dòng)態(tài)改變網(wǎng)頁(yè)的內(nèi)容.DWR采取了一個(gè)類似AJAX的新方法來(lái)動(dòng)態(tài)生成基于JAVA類的JavaScript代碼。這樣WEB開發(fā)人員就可以在JavaScript里使用Java代碼就像它們是瀏覽器的本地代碼(客戶端代碼)一樣;但是Java代碼運(yùn)行在WEB服務(wù)器端而且可以自由訪問(wèn)WEB 服務(wù)器的資源。出于安全的理由,W
22、EB開發(fā)者必須適當(dāng)?shù)嘏渲媚男㎎ava類可以安全的被外部使用。這個(gè)從JAVA到JavaScript的遠(yuǎn)程功能方法給DWR的用戶帶來(lái)非常像傳統(tǒng)的RPC機(jī)制,就像RMI或者SOAP一樣,而且擁有運(yùn)行在WEB上但是不需要瀏覽器插件的好處。DWR不認(rèn)為瀏覽器/WEB服務(wù)器協(xié)議是重要的,而更樂(lè)于保證編程界面的簡(jiǎn)單自然。對(duì)此最大的挑戰(zhàn)就是把AJAX的異步特性和正常JAVA方法調(diào)用的同步特性相結(jié)合。在異步模式下,結(jié)果數(shù)據(jù)在開始調(diào)用之后的一段時(shí)間之后才可以被異步訪問(wèn)獲取到。DWR允許WEB開發(fā)人員傳遞一個(gè)回調(diào)函數(shù),來(lái)異步處理Java函數(shù)調(diào)用過(guò)程。2.8 Mysql技術(shù)簡(jiǎn)介MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)
23、,開發(fā)者為瑞典MySQL AB公司。在2008年1月16號(hào)被Sun公司收購(gòu)。而2009年,SUN又被Oracle收購(gòu).對(duì)于Mysql的前途,沒(méi)有任何人抱樂(lè)觀的態(tài)度。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。2。9 Jetty技術(shù)簡(jiǎn)介Jetty 是一個(gè)開源的servlet容器,它為基于Java的web內(nèi)容,例如JSP和servlet提供運(yùn)行環(huán)境。Jetty是使用Java語(yǔ)言編寫的,它的API以一組JAR包的形式發(fā)布。開發(fā)人員可以將Jetty容器
24、實(shí)例化成一個(gè)對(duì)象,可以迅速為一些獨(dú)立運(yùn)行(stand-alone)的Java應(yīng)用提供網(wǎng)絡(luò)和web連接.Jetty 可以作為嵌入式服務(wù)器使用,Jetty的運(yùn)行速度較快,而且是輕量級(jí)的,可以在Java中可以從test case中控制其運(yùn)行。從而可以使自動(dòng)化測(cè)試不再依賴外部環(huán)境,順利實(shí)現(xiàn)自動(dòng)化測(cè)試。2.10 Comet技術(shù)簡(jiǎn)介Comet 是一種新的 Web 應(yīng)用架構(gòu)?;谶@種架構(gòu)開發(fā)的應(yīng)用中,服務(wù)器端會(huì)主動(dòng)以異步的方式向客戶端程序推送數(shù)據(jù),而不需要客戶端顯式的發(fā)出請(qǐng)求。Comet 架構(gòu)非常適合事件驅(qū)動(dòng)的 Web 應(yīng)用,以及對(duì)交互性和實(shí)時(shí)性要求很強(qiáng)的應(yīng)用,如股票交易行情分析、聊天室和 Web 版在線游
25、戲等。3 需求分析和可行性分析3。1 需求分析3.1。1 網(wǎng)站說(shuō)明此網(wǎng)站中二種不同角色注冊(cè)用戶管理員.注冊(cè)用戶:查看信息、發(fā)修改資料、發(fā)送信息、申請(qǐng)假期、上傳文件等。管理員:用戶信息修改、用戶信息管理、數(shù)據(jù)庫(kù)管理(CRUD)。3。1。2 論壇網(wǎng)站總體分析通過(guò)上面的功能說(shuō)明,我們可以將論壇的制作分為四大部分:(1)用戶注冊(cè)和登陸模塊:這個(gè)模塊的功能,就是新來(lái)網(wǎng)友可以填寫注冊(cè)資料 ,通過(guò)審核后便成為本論壇的正式用戶,并可以以用戶身份登陸論壇,進(jìn)行發(fā)新帖、回復(fù)等功能.用戶的流程如圖31。用戶登陸申請(qǐng)假期查看請(qǐng)假結(jié)果修改個(gè)人信息發(fā)送公文上傳公文附件查看公文箱查看上傳文件圖31用戶功能模塊(2)管理模塊
26、:管理員可以進(jìn)行對(duì)用戶的信息進(jìn)行處理,查詢,修改,刪除等。了解了具體的功能需求后,就可以按模塊的開始論壇的設(shè)計(jì)了。當(dāng)然,這些模塊的只是在功能上對(duì)論壇結(jié)構(gòu)的劃分,實(shí)際上并不能夠完全的把他們獨(dú)立出來(lái)進(jìn)行設(shè)計(jì)。對(duì)于這種較小的應(yīng)用,也沒(méi)有必要進(jìn)行完全的模塊化設(shè)計(jì),在良好的規(guī)劃下直接寫程序代碼或許來(lái)的更為簡(jiǎn)單一些。如圖3-2.管理員登陸基本操作請(qǐng)假模塊員工信息查詢員工信息增加員工信息修改查看請(qǐng)假信息請(qǐng)假批示員工信息刪除圖3-2管理員功能模塊3。1。3 功能流程圖分析系統(tǒng)的功能,流程圖如圖33。員工功能操作游客/用戶登錄網(wǎng)站注冊(cè)員工信息CRUD登錄后臺(tái)管理員圖33網(wǎng)站流程圖3.1。4 功能流程圖本系統(tǒng)的網(wǎng)
27、絡(luò)應(yīng)用原理如下圖所示:企業(yè)總部Web服務(wù)器后臺(tái)辦公網(wǎng)數(shù)據(jù)庫(kù)企業(yè)總局域網(wǎng)客戶機(jī)瀏覽器 企 業(yè) 內(nèi) 部局域網(wǎng)Internet 網(wǎng)絡(luò) 管理員模塊圖 3-1 本系統(tǒng)的網(wǎng)絡(luò)應(yīng)用原理3。2 可行性分析3。2。1 基本性能網(wǎng)站包括主要的功能:新用戶的注冊(cè),用戶登錄,管理員刪除用戶,管理員增加用戶和修改用戶資料,和查詢用戶這些功能;用戶修改信息資料,用戶發(fā)送公文,可以滿足一般的用戶需要.3.2。2 開發(fā)目標(biāo)這個(gè)網(wǎng)站預(yù)期的目的是為了做成公司內(nèi)部員工管理和方便客戶端和瀏覽器端之間的交流。通過(guò)該系統(tǒng),員工能夠相互交流溝通,降低人工管理成本.3。3 數(shù)據(jù)庫(kù)設(shè)計(jì)思想 為了滿用戶的需求,該信息管理系統(tǒng)要實(shí)現(xiàn)以下目標(biāo)。 (
28、1)模塊要全部B/S系統(tǒng)開發(fā),用戶無(wú)需在貝爾巴蒂機(jī)器安裝軟件,就可通過(guò)瀏覽器登錄系統(tǒng)進(jìn)行操作。 (2)模塊采用JSP開發(fā),具有安全的開發(fā)性,可以運(yùn)行在任何支持JSP標(biāo)準(zhǔn)的服務(wù)器上,非常方便以后的維護(hù)和系統(tǒng)升級(jí)。 (3)只要系統(tǒng)允許,用戶可以在任何時(shí)間、任何地點(diǎn)辦公,包擴(kuò)出差在外地都可以使用該系統(tǒng)。 (4)模塊維護(hù)費(fèi)用很低,所有的維護(hù)操作只需要針對(duì)服務(wù)器進(jìn)行,外地管理員只需要把服務(wù)器連接上網(wǎng)即可進(jìn)行維護(hù)和升級(jí),這對(duì)人力、時(shí)間、費(fèi)用的節(jié)省是相當(dāng)可觀的. (5)模塊采用Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器分離的方式,系統(tǒng)的安全性和性能因此得到很大提高. (6) 系統(tǒng)界面友好,使用方便,易操作。在建設(shè)網(wǎng)站網(wǎng)站之
29、前,我們必須對(duì)網(wǎng)站所用到的數(shù)據(jù)進(jìn)行大致的分類和具體的結(jié)構(gòu)設(shè)計(jì),既要做到清晰明了,又要能適應(yīng)網(wǎng)站各項(xiàng)功能的調(diào)用,而不至于產(chǎn)生結(jié)構(gòu)上的邏輯混亂,保證關(guān)鍵數(shù)據(jù)在意外情況下不會(huì)被破壞,可以說(shuō)數(shù)據(jù)庫(kù)是網(wǎng)站的重中之重.數(shù)據(jù)庫(kù)設(shè)計(jì)要遵循一些規(guī)則,一個(gè)好的數(shù)據(jù)庫(kù)滿足一些嚴(yán)格的約束和要求.盡量分離各實(shí)體對(duì)應(yīng)的表,一個(gè)實(shí)體對(duì)應(yīng)一個(gè)表,分析該實(shí)體有哪些屬性,對(duì)應(yīng)有些什么字段,以及各實(shí)體之間的聯(lián)系。實(shí)體、屬性與聯(lián)系是進(jìn)行概念設(shè)計(jì)時(shí)要考慮的三個(gè)元素,也是一個(gè)好的數(shù)據(jù)庫(kù)設(shè)計(jì)的核心.3.3。1 數(shù)據(jù)表的設(shè)計(jì)考慮到論壇的實(shí)用性,根據(jù)網(wǎng)站需求分析,只設(shè)計(jì)了五個(gè)數(shù)據(jù)庫(kù)表,分別為員工信息(如表31)、員工詳細(xì)信息(如表3-2)、請(qǐng)
30、假信息(如表3-3)、上傳文件(如表34)和公文表(如表35)。表3-1 員工信息表字段字段名類型寬度小數(shù)位索引可否為空id編號(hào)int11是否username用戶名varchar10否password密碼varchar10否表3-2 用戶詳細(xì)信息表字段字段名類型寬度小數(shù)位主鍵可否為空id編號(hào)int11是否email 電子郵件varchar50否sex性別varchar4否birth出生日期varchar15否edu學(xué)歷varchar10否dep部門varchar12否phone聯(lián)系電話varchar15否address家庭住址varchar50否scale用戶等級(jí)varchar1否表3-3 請(qǐng)
31、假信息表字段字段名類型寬度小數(shù)位索引可否為空id編號(hào)int11是否applyid申請(qǐng)人編號(hào)int11否applyusername申請(qǐng)人姓名varchar10否applytitle申請(qǐng)標(biāo)題varchar50否applytype申請(qǐng)類型varchar6否startdate開始日期varchar10否starttime開始時(shí)間varchar4否enddate結(jié)束日期varchar10否endtime結(jié)束時(shí)間varchar4否applyreason申請(qǐng)理由text0否ifapply是否批示char1否表34 公文信息表字段字段名類型寬度小數(shù)位主鍵可否為空id編號(hào)int11是否conttitle 公文標(biāo)
32、題varchar40否senderid發(fā)送編號(hào)int10否sendername發(fā)送人varchar10否receiverid接收編號(hào)datetime10否receivername接收人varchar10否contlevel公文等級(jí)varchar6否conttext公文內(nèi)容varchar0否contfileid附件編號(hào)int11否contfilename附件名varchar50否isread是否讀取varchar1否表35 上傳文件信息表字段字段名類型寬度小數(shù)位主鍵可否為空id編號(hào)int11是否userid 用戶編號(hào)int11否username用戶名varchar10否uploaddate上傳日
33、期varchar20否filename文件名varchar255否filesize文件大小bigint20否fileadd文件地址varchar255否3。4 小結(jié)在數(shù)據(jù)庫(kù)中可以使用關(guān)聯(lián)關(guān)系,減少表的數(shù)量而且可以規(guī)范數(shù)據(jù)庫(kù)的模式.這樣以來(lái)避免了數(shù)據(jù)庫(kù)的臃腫和繁雜,最終使得數(shù)據(jù)庫(kù)更有關(guān)系性。4 詳細(xì)設(shè)計(jì)4。1 各模塊設(shè)計(jì) 本企業(yè)員工管理系統(tǒng)大致分為六個(gè)部分: (1)管理員模塊 本程序設(shè)若干主控管理員,根據(jù)需要可修改用戶密碼,也可添加用戶,可添加任意多個(gè)操作員,可修改用戶密碼。 (2)員工管理模塊 本程序可以瀏覽員工信息,有查詢功能,可以按姓名、部門等查詢條件查找員工。當(dāng)員工的個(gè)人情況發(fā)生變化需要
34、修改時(shí),可以方便地修改個(gè)人資料. (3)員工信息添加模塊 添加新的員工信息,并可以設(shè)置權(quán)限。(由管理員來(lái)添加新的員工) (4)員工信息查詢模塊 在員工信息管理模塊中,用戶根據(jù)需要,可根據(jù)已有選項(xiàng)查詢各種條件的員工。 (5)員工信息刪除模塊 刪除不需要的員工信息. (6)員工信息修改模塊4.1.1 用戶注冊(cè)登錄功能此部分是實(shí)現(xiàn)用戶的注冊(cè)和登錄功能。通過(guò)填寫注冊(cè)資料,正確填寫后,點(diǎn)擊注冊(cè)按鈕后便可注冊(cè)成為正式的用戶。如圖41和圖42所示。圖4-1 登錄界面圖42 用戶注冊(cè)界面用戶資料填寫正確就可以注冊(cè)了。而且針對(duì)部分信息做了一些限制。不允許注冊(cè)重復(fù)的用戶名。性別只能選擇男或女其中一個(gè)(動(dòng)態(tài)單選按鈕
35、).用戶注冊(cè)成功后就可以使用用戶所擁有的一切功能了。圖43 登錄后的歡迎界面4.1.2 修改個(gè)人信息功能這部分實(shí)現(xiàn)了用戶根據(jù)自己的情況更改和更新個(gè)人信息。很容易保證信息的完整性準(zhǔn)確行.圖4-4 修改信息界面4。1.3 請(qǐng)假功能這部分功能能迅速的給管理員遞交請(qǐng)假信息,并且記錄在數(shù)據(jù)庫(kù)中方便查找和更新記錄。如圖4-5所示.圖4-5員工請(qǐng)假界面4.1。4 用戶查看假期申請(qǐng)批示功能此部分實(shí)現(xiàn)用戶查看請(qǐng)假的批示功能。發(fā)表主題如圖4-6所示。圖4-6 查看請(qǐng)假申請(qǐng)批示4.1。5 發(fā)送公文功能此部分是員工發(fā)送公文的功能,可以給注冊(cè)過(guò)的所以用戶發(fā)送公文,并且發(fā)送后如果對(duì)方在線會(huì)有提示。發(fā)送公文界面如圖4-8所
36、示。圖48 發(fā)送公文界面4。1.6 用戶查看公文箱功能此部分主要是用戶查看收到的公文并且可以再次下載公文附件.用戶查看公文箱界面如圖4-9所示。圖49 用戶查看公文界面4。1。7 文件上傳功能此部分主要是實(shí)現(xiàn)文件上傳的功能。文件上傳界面如圖410所示。圖410 文件上傳界面4.1.8 查看文件上傳箱功能此部分主要是用戶查看用戶上傳文件。上傳文件箱界面如圖411所示.圖411 文件上傳箱界面4.1。9 管理員登錄功能此部分是管理員登錄功能。管理員登錄界面如圖4-12所示。圖4-12 管理員登錄界面界面4。1.10 管理員管理信息功能此部分是管理員對(duì)員工信息CRUD功能。CRUD界面如圖4-13所
37、示。圖413 管理員對(duì)員工信息CRUD界面界面4。1。11 管理員批復(fù)請(qǐng)假信息功能此部分是管理員對(duì)員工請(qǐng)假信息管理和批示功能。管理請(qǐng)假信息界面如圖4-14所示。圖414 員工請(qǐng)假信息管理界面4。2 詳細(xì)的代碼設(shè)計(jì)4。2.1 前臺(tái)功能頁(yè)面用戶登錄與注冊(cè)頁(yè)面:index。jsp用戶操作頁(yè)面:user.jsp管理員登錄頁(yè)面:adminlogin。jsp管理員操作頁(yè)面:success。jspCSS文件:Extjs庫(kù)所帶css文件Javascript文件:管理員登錄代碼:adminlogin.js用戶登錄代碼:login。js管理員操作代碼:main。js用戶操作代碼:operation.js4.2。2
38、 后臺(tái)功能頁(yè)面Package com.my登錄:login。java管理員管理:admin_edit。java 、admin_delete.java、register。java員工管理:usercontents.java、user_username_list.java、user_edit。java、user_apply。java user_apply_edit.java、upload_info。java、sendcontent.java、fileUpload.java、byid2detail.java、bycontid2detail。java、applyinfo_show。java以上均為se
39、rvlet4.2.3 數(shù)據(jù)庫(kù)的連接數(shù)據(jù)庫(kù)使用的是Hibernate3.2,其主要配置項(xiàng)為<hibernateconfiguration><session-factory<property name=”connection。username”>root</property><property name="connection。url”jdbc:mysql:/localhost:3306/design/property<property name="dialect”>org.hibernate。dialect.MySQ
40、LDialect</property>property name=”file”>design</property>property name="connection。password”>root</property>property name=”connection。driver_class">com.mysql。jdbc.Driver</propertyproperty name=”show_sql”>true</property><mapp
41、ing resource="com/my/pojo/Userinfo。hbm。xml” /<mapping resource="com/my/pojo/Userdetail。hbm。xml" /mapping resource=”com/my/pojo/Applyinfo。hbm。xml" /><mapping resource=”com/my/pojo/Fileinfo。hbm。xml” /mapping resource=”com/my/pojo/Contentinfo。hbm.xml” /</sessionfactory&g
42、t;/hibernateconfiguration>4.2.4 用戶登陸與注冊(cè)模塊的實(shí)現(xiàn)用戶登陸模塊是防止非法用戶登陸的第一道防線,通過(guò)它可以保護(hù)后臺(tái)數(shù)據(jù)庫(kù)的安全性,所以在提交登錄時(shí)返回了用戶的ID并且在頁(yè)面的一個(gè)hidden表單元素中放置該ID,如果非法訪問(wèn)登錄后的網(wǎng)頁(yè)會(huì)報(bào)錯(cuò)并且不允許進(jìn)入。<%String str = session。getAttribute("id”).toString();<input type=”hidden” name="userid" id=”userid" value=<%=str>部分登錄代
43、碼:String _user = req。getParameter(”username”);String _pass = req.getParameter(”password");Configuration config = new Configuration().configure();SessionFactory factory = config。buildSessionFactory();Session session = factory.openSession();Transaction tran = session.beginTransaction();Query quer
44、y = null;query = session。createQuery("select user.id,user。username,user.password from Userinfo as user where user.username=?");query。setParameter(0, _user);List list = query。list();for (ListIterator iterator = list。listIterator(); iterator.hasNext();) Object rows = (Object) iterator.next()
45、;id = Integer。parseInt(rows0。toString());name = (String) rows1;pass = (String) rows2;Userdetail ud=(Userdetail)session.load(Userdetail.class, new Integer(id));scale=ud.getScale();mit();session.close();factory.close();if (_user。equals(name) && _pass。equals(pass) HttpSession loginsession = req
46、.getSession();loginsession.setAttribute("id", Integer.toString(id));out.print(”success" + ”" + id+”"+scale); elseout。print(”error");如果用戶還不是用戶則提示用戶進(jìn)行注冊(cè),用戶提交信息之后,系統(tǒng)開始判斷用戶的注冊(cè)信息是否有效,部分代碼如下:String str1=req。getParameter("username”);String str2=req。getParameter("pass
47、word”);String str3=req.getParameter("email");String str4=req。getParameter(”sex");String str5=req.getParameter(”birth");String str6=req.getParameter("edu");String str7=req.getParameter(”dep");String str8=req。getParameter("phone");String str9=req。getParamet
48、er(”address”);System。out.println(str1+str2+str3+str4+str5+str6+str7+str8+str8+str9);Userdetail ud=new Userdetail();ud。setEmail(str3);ud。setEdu(str6);ud。setSex(str4);ud。setBirth(str5);ud。setDep(str7);ud。setPhone(str8);ud。setAddress(str9);ud.setScale("0”);Userinfo user=new Userinfo();user。setUser
49、name(str1);user。setPassword(str2);user。setUserdetail(ud);ud.setUserinfo(user);Configuration config=new Configuration()。configure(); SessionFactory factory=config。buildSessionFactory(); Session session=factory。openSession(); Transaction tran=session.beginTransaction(); Query query =null; query=sessio
50、n。createQuery("select user.username from Userinfo as user where user。username=”+str1+"'”); List list=query.list(); ListIterator iterator=list。listIterator(); if(!iterator.hasNext() session。save(user); out.print("success”); else out.print(”exist”); mit(); session。close(); factory.c
51、lose();4.2。5 用戶請(qǐng)假申請(qǐng)模塊實(shí)現(xiàn)String str1=req.getParameter(”applyid”);String str2=req。getParameter(”applytitle");String str3=req.getParameter(”applytype”);String str4=req。getParameter("startdate");String str5=req.getParameter(”starttime");String str6=req。getParameter("enddate”);Str
52、ing str7=req.getParameter("endtime”);String str8=req.getParameter("applyreason”);String str9=req.getParameter("ifapply”);Applyinfo ai=new Applyinfo();ai.setApplyid(Integer.parseInt(str1);ai.setApplytitle(str2);ai.setApplytype(str3);ai.setStartdate(str4);ai.setStarttime(str5);ai.setEnd
53、date(str6);ai。setEndtime(str7);ai。setApplyreason(str8);ai.setIfapply(str9);System.out。println(str1+str2+str3+str4+str5+str6+str7+str8+str9);Configuration config=new Configuration()。configure(); SessionFactory factory=config。buildSessionFactory(); Session session=factory.openSession(); Transaction tran=session。beginTransaction(); Userinfo
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度教育培訓(xùn)機(jī)構(gòu)教育行業(yè)數(shù)據(jù)服務(wù)協(xié)議
- 二零二五年度農(nóng)業(yè)科技文職人員聘用協(xié)議
- 2025年度茶樓合作經(jīng)營(yíng)協(xié)議書:茶樓與茶藝茶具研發(fā)中心的合作合同
- 二零二五年度知識(shí)產(chǎn)權(quán)質(zhì)押合同解除與資金返還協(xié)議
- 2025年度船舶租賃與船舶技術(shù)咨詢服務(wù)協(xié)議
- 2025年度超市轉(zhuǎn)讓與智能化升級(jí)改造合作協(xié)議
- 2025年度智能化社區(qū)物業(yè)委托經(jīng)營(yíng)管理合同
- 專業(yè)資格教育培訓(xùn)合作協(xié)議
- 新型儲(chǔ)能技術(shù)應(yīng)用開發(fā)合作協(xié)議
- 行路難:古典詩(shī)詞中的壯志情懷教案
- 《中國(guó)潰瘍性結(jié)腸炎診治指南(2023年)》解讀
- 中國(guó)故事英文版哪吒英文二篇
- 鐵路橋梁工程各工序工效分析
- 2022《文創(chuàng)產(chǎn)品的設(shè)計(jì)》PPT演示文稿
- 介入科制度匯編
- 鍍鋅管理論重量表常用
- 鐵總計(jì)統(tǒng)【2017】177號(hào)關(guān)于進(jìn)一步加強(qiáng)鐵路建設(shè)項(xiàng)目征地拆遷工作和費(fèi)用管理的指導(dǎo)意見
- 電子技術(shù)基礎(chǔ)與技能-(3)
- 部編版四年級(jí)下冊(cè)語(yǔ)文第二單元課文教材分析及全部教案
- 美術(shù)開學(xué)第一課(課堂PPT)
- 出生證明委托書(共2頁(yè))
評(píng)論
0/150
提交評(píng)論