版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)綜合實(shí)訓(xùn)報(bào)告</b></p><p> 班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐</p><p><b> 任務(wù)書</b></p><p> 熟練掌握J(rèn)AVA和JSP技術(shù),SQL數(shù)據(jù)庫(kù)編程。精通網(wǎng)頁(yè)的制作。擔(dān)任畢業(yè)設(shè)計(jì)小組組長(zhǎng)。負(fù)責(zé):</p><p> 整個(gè)系統(tǒng)的總體開發(fā)與
2、設(shè)計(jì)。</p><p><b> 人員調(diào)度。</b></p><p><b> 模塊分配。</b></p><p><b> 項(xiàng)目進(jìn)度監(jiān)控。</b></p><p><b> 模塊整合。</b></p><p><b&
3、gt; 摘 要</b></p><p> “班主任管理系統(tǒng)”是校園一個(gè)管理軟件。通過這個(gè)軟件在實(shí)際工作中可以起到對(duì)班級(jí)、學(xué)生個(gè)人、班主任工作進(jìn)行定量的考核,方便班主任的管理班級(jí)的工作,方便學(xué)生處考核各個(gè)班級(jí)以及班主任的工作。</p><p> 本系統(tǒng)采用JSP和J2EE技術(shù),可以跨平臺(tái)、跨網(wǎng)絡(luò)、統(tǒng)一界面;通過高度模塊化結(jié)構(gòu)、合理的XML文件的數(shù)據(jù)格式,方便了系統(tǒng)的擴(kuò)展和維
4、護(hù)。</p><p> 通過本系統(tǒng),可以查詢學(xué)生基本情況、查詢并修改班級(jí)和學(xué)生的千分制、查詢班主任日常事務(wù)并且可以動(dòng)態(tài)定制任務(wù)、可以通過BBS進(jìn)行家長(zhǎng)、學(xué)生和老師之間的交流、還可以動(dòng)態(tài)設(shè)置權(quán)限。</p><p> 本系統(tǒng)的使用,可以大大提高班主任以及學(xué)生處的工作效率,可以增加家長(zhǎng)、學(xué)生老師之間的溝通。</p><p> 關(guān)鍵詞:班級(jí)管理,千分制,Java, J
5、SP</p><p><b> 目 錄</b></p><p><b> 摘 要3</b></p><p><b> 目 錄4</b></p><p><b> 第一章 緒論5</b></p><p> 1.1
6、課題背景5</p><p> 1.2 使用技術(shù)及發(fā)展5</p><p> 第二章班主任管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)8</p><p> 2.1 班主任管理系統(tǒng)的設(shè)計(jì)8</p><p> 2.1.1 系統(tǒng)框架8</p><p> 2.1.2 系統(tǒng)使用部門9</p><p> 2.1
7、.3 系統(tǒng)使用者9</p><p> 2.1.4 系統(tǒng)功能劃分與描述9</p><p> 2.2班主任管理系統(tǒng)的部分實(shí)現(xiàn)10</p><p><b> 總 結(jié)22</b></p><p><b> 參考文獻(xiàn)24</b></p><p><b>
8、 第一章 緒論</b></p><p><b> 1.1 課題背景</b></p><p> 隨著現(xiàn)在教育事業(yè)的不斷發(fā)展,信息技術(shù)對(duì)社會(huì)進(jìn)步和國(guó)名經(jīng)濟(jì)發(fā)揮著越來越大的促進(jìn)作用,并對(duì)傳統(tǒng)的思想觀念、工作方式產(chǎn)生巨大的沖擊。世界已進(jìn)入信息化時(shí)代,網(wǎng)絡(luò)技術(shù)已進(jìn)入了各行各業(yè),同時(shí)也帶動(dòng)了各行業(yè)的發(fā)展。</p><p> 中國(guó)現(xiàn)在教育事
9、業(yè)的發(fā)展迅猛,高等院校的數(shù)量和規(guī)模不斷的擴(kuò)大。與此同時(shí),根據(jù)時(shí)代的要求,管理,特別是對(duì)日益增多的學(xué)生的管理,對(duì)學(xué)校的發(fā)展起著不可忽視的作用。而班主任(輔導(dǎo)老師)在學(xué)生的管理中有著承上啟下的樞紐地位,這一角色的重要性也日漸突出起來。學(xué)校與學(xué)生之間溝通途徑的建立、對(duì)學(xué)生的具體管理措施的實(shí)施等都是通過班主任的工作得以體現(xiàn)和貫徹執(zhí)行的,如果班主任這個(gè)環(huán)節(jié)的工作做的好,其對(duì)學(xué)生工作的總體管理和發(fā)展都具有不可估量的好處。因此,越來越多的學(xué)校對(duì)班主任
10、這一角色也越來越重視,一些院校專門對(duì)班主任進(jìn)行一系列培訓(xùn),并且由原來的一個(gè)系甚至一個(gè)院配備一名輔導(dǎo)員增加至每個(gè)班級(jí)一名班主任。</p><p> 與上述管理需求不符的是:針對(duì)班主任工作的配套管理軟件嚴(yán)重缺乏。雖然,已有很多較成熟的學(xué)生管理方面的軟件,但這些軟件主要是實(shí)現(xiàn)了教學(xué)和教務(wù)兩個(gè)方面的數(shù)字化管理,而在目前國(guó)內(nèi)已有的學(xué)生管理系統(tǒng)中,具體到班主任管理班級(jí)這個(gè)方面的管理軟件基本上是一片空白。</p>
11、<p> 實(shí)際上,一方面,班主任工作的特點(diǎn)是事多、瑣碎、繁雜,但工作程序是有序。因而,在當(dāng)今科技高度發(fā)達(dá)的信息社會(huì),開發(fā)一個(gè)適合班主任工作的管理軟件,提高辦公質(zhì)量,加強(qiáng)班級(jí)管理,是適應(yīng)學(xué)校各方面發(fā)展的要求,是學(xué)生管理工作中急需解決的問題。</p><p> 1.2 使用技術(shù)及發(fā)展</p><p> 本論文主要研究JSP技術(shù)以及JSP技術(shù)實(shí)現(xiàn)基于Web的三層體系結(jié)構(gòu)的應(yīng)用
12、,實(shí)現(xiàn)了動(dòng)態(tài)網(wǎng)頁(yè)對(duì)數(shù)據(jù)庫(kù)的查詢、統(tǒng)計(jì)、更新等功能。目的是應(yīng)用計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)、Internet技術(shù)、以Tomcat為服務(wù)器,JSP、JAVA作為主要開發(fā)工具,實(shí)現(xiàn)跨平臺(tái)、跨網(wǎng)絡(luò)、統(tǒng)一界面、易于擴(kuò)展和維護(hù)的大紅鷹班主任管理系統(tǒng)。 </p><p> B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶界面完全
13、通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu),主要是利用了不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種Script語(yǔ)言(VBScript、JavaScript…)和ActiveX技術(shù),用通用瀏覽器就實(shí)現(xiàn)了原來需要復(fù)雜專用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。隨著Windows 98/Windows 2000將瀏覽器技術(shù)植入操作系統(tǒng)內(nèi)
14、部,這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。顯然B/S結(jié)構(gòu)應(yīng)用程序相對(duì)于傳統(tǒng)的C/S結(jié)構(gòu)應(yīng)用程序?qū)⑹蔷薮蟮倪M(jìn)步。B/S結(jié)構(gòu)采用星形拓?fù)浣Y(jié)構(gòu)建立企業(yè)內(nèi)部通信網(wǎng)絡(luò)或利用Internet虛擬專網(wǎng)(VPN)。前者的特點(diǎn)是安全、快捷、準(zhǔn)確。后者則具有節(jié)省投資、跨地域廣的優(yōu)點(diǎn)。須視企業(yè)規(guī)模和地理分布確定。企業(yè)內(nèi)部通過防火墻接入Internet,再整個(gè)網(wǎng)絡(luò)采用TCP/IP協(xié)議。</p><p> 圖 1-1 網(wǎng)絡(luò)結(jié)構(gòu)圖
15、 C/S 與 B/S 區(qū)別:Client/Server是建立在局域網(wǎng)的基礎(chǔ)上的.Browser/Server是建立在廣域網(wǎng)的基礎(chǔ)上的。1.硬件環(huán)境不同: C/S 一般建立在專用的網(wǎng)絡(luò)上, 小范圍里的網(wǎng)絡(luò)環(huán)境, 局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù).B/S 建立在廣域網(wǎng)之上的, 不必是專門的網(wǎng)絡(luò)硬件環(huán)境,例與電話上網(wǎng), 租用設(shè)備. 信息自己管理. 有比C/S更強(qiáng)的適應(yīng)范圍, 一般只要有操作系統(tǒng)和瀏覽器就行 2.對(duì)安全
16、要求不同 C/S 一般面向相對(duì)固定的用戶群, 對(duì)信息安全的控制能力很強(qiáng). 一般高度機(jī)密的信息系統(tǒng)采用C/S 結(jié)構(gòu)適宜. 可以通過B/S發(fā)布部分可公開信息.B/S 建立在廣域網(wǎng)之上, 對(duì)安全的控制能力相對(duì)弱, 面向是不可知的用戶群. 3.對(duì)程序架構(gòu)不同 C/S 程序可以更加注重流程, 可以對(duì)權(quán)限多層次校驗(yàn), 對(duì)系統(tǒng)運(yùn)行速度可以較少考慮.B/S 對(duì)安全以及訪問速度的多重的考慮, 建立在需要更加優(yōu)化的基礎(chǔ)之上. 比C/S有更高的要求 B/S結(jié)
17、構(gòu)的程序架構(gòu)是發(fā)展的趨勢(shì), 從MS的.Net系列的BizTalk 2000 Exchange 2</p><p> JSP是JavaServer Pages的簡(jiǎn)寫。JSP技術(shù)能讓W(xué)eb開發(fā)員和網(wǎng)頁(yè)設(shè)計(jì)員快速地開發(fā)容易維護(hù)的動(dòng)態(tài)Web主頁(yè)。 </p><p> 用JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,即能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。 JSP技術(shù)使用Java編程語(yǔ)言
18、編寫類XML的tags和scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過tags和scriptlets訪問存在于服務(wù)端的資源(例如JavaBesns)的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 JSP技術(shù)是Servlet技術(shù)的擴(kuò)展。Servlet是平臺(tái)無關(guān)的,100%純Java的Java服務(wù)端組件。</p><p
19、> 第二章班主任管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)</p><p> 2.1 班主任管理系統(tǒng)的設(shè)計(jì)</p><p> 班主任管理系統(tǒng)總的目的在于方便班主任對(duì)班級(jí)的管理,同時(shí)也提高了學(xué)生處對(duì)各個(gè)班級(jí)的評(píng)比和對(duì)班主任事務(wù)的評(píng)估與考核,為領(lǐng)導(dǎo)提供輔助決策支持,提高決策的科學(xué)性。建立學(xué)校數(shù)據(jù)庫(kù),在日常工作中自動(dòng)生成數(shù)據(jù),簡(jiǎn)化上報(bào)過程,提高辦事效率。</p><p> 2.1
20、.1 系統(tǒng)框架</p><p> 班主任管理系統(tǒng)是學(xué)校信息系統(tǒng)的一個(gè)子系統(tǒng),相應(yīng)的系統(tǒng)框架圖見圖2-1:</p><p> 暫時(shí)還不存在的子系統(tǒng)</p><p><b> 已有的子系統(tǒng)</b></p><p><b> 班主任管理子系統(tǒng)</b></p><p> 班
21、主任管理子系統(tǒng)中的模塊</p><p> 圖2-1 系統(tǒng)框架圖</p><p> 說明:班主任管理子系統(tǒng)和教務(wù)處、宿管科、學(xué)生處都有數(shù)據(jù)交互。</p><p> 學(xué)生基本信息表單來自教務(wù)處中的數(shù)據(jù)庫(kù)。大紅鷹學(xué)院的教務(wù)系統(tǒng)是萬方系統(tǒng),它所使用的數(shù)據(jù)庫(kù)是ORACLE的。</p><p> 積分考核管理、班主任日常事務(wù)管理、用戶權(quán)限設(shè)置這
22、一模塊和學(xué)生處相連。</p><p> 班主任事務(wù)管理、積分考核管理與宿管科相連。</p><p> 2.1.2 系統(tǒng)使用部門</p><p> 班主任管理系統(tǒng)是一個(gè)非常實(shí)用的系統(tǒng),在學(xué)院里面使用它的部門主要是:學(xué)生處、宿管科和班級(jí)學(xué)生、學(xué)生家長(zhǎng)以及相應(yīng)班主任。</p><p> 學(xué)生處每天對(duì)各班進(jìn)行各種檢查,針對(duì)不同的情況對(duì)相應(yīng)班級(jí)
23、的千分制進(jìn)行增減,每月對(duì)所有班級(jí)千分制排名,并且以此作為班主任當(dāng)月工作考核內(nèi)容之一。每月學(xué)生處根據(jù)本系統(tǒng)檢查班主任日常事務(wù),這也是班主任每月考核內(nèi)容之一。</p><p> 宿管科管理學(xué)生寢室住宿,有權(quán)對(duì)班級(jí)成員因住宿方面的情況進(jìn)行個(gè)人方面千分制的增減。每次班主任下寢室,都由宿管科登記。</p><p> 班級(jí)的普通學(xué)生可以查看自己的基本信息,查看自己班級(jí)以及本人的千分制情況,可以在留
24、言板里發(fā)布信息;班委除了擁有班級(jí)普通學(xué)生的權(quán)限以外,還可以根據(jù)班級(jí)成員的具體情況對(duì)班級(jí)成員的千分制進(jìn)行相應(yīng)增扣,查看其他班級(jí)成員信息;班主任可以修改班級(jí)成員的千分制,對(duì)班主任日常事務(wù)管理這一塊進(jìn)行相應(yīng)數(shù)據(jù)錄入。</p><p> 學(xué)生家長(zhǎng)可以用自己子女的用戶名、密碼登入系統(tǒng),并且可以在留言板留言。</p><p> 2.1.3 系統(tǒng)使用者</p><p> 班
25、主任管理系統(tǒng)主要工作是方便班主任的日常工作,并且對(duì)班主任工作進(jìn)行定性定量考核的考核,系統(tǒng)使用者有:</p><p> 學(xué)生處管理者:對(duì)班級(jí)千分制進(jìn)行查詢、修改;對(duì)班主任工作進(jìn)行查詢。</p><p> 宿管科管理者:對(duì)班級(jí)成員千分制進(jìn)行增扣的錄入;對(duì)班主任下寢室時(shí)間與寢室號(hào)碼的錄入。</p><p> 班主任:對(duì)班級(jí)千分制和班級(jí)成員千分制的錄入、查詢、修改;對(duì)
26、班級(jí)成員信息的查詢;對(duì)班主任日常事務(wù)的相關(guān)錄入;留言板上留言。</p><p> 班委:對(duì)班級(jí)成員千分制的錄入;對(duì)班級(jí)千分制的查詢;留言板上留言。</p><p> 普通學(xué)生、學(xué)生家長(zhǎng):對(duì)本人或子女千分制的查詢,班級(jí)千分制的查詢,留言板留言。</p><p> 2.1.4 系統(tǒng)功能劃分與描述</p><p> 班主任管理系統(tǒng)分為學(xué)生基
27、本信息管理、積分考核管理、班主任日常事務(wù)管理、用戶權(quán)限設(shè)置管理、登入登出管理和消息公布留言板六個(gè)模塊。</p><p> 學(xué)生基本信息管理:這個(gè)模塊中的數(shù)據(jù)是教務(wù)處的方正教務(wù)系統(tǒng)中的數(shù)據(jù),在我們這個(gè)班主任管理系統(tǒng)中沒有修改權(quán)限,但是可以供班委、班主任、學(xué)生處查詢。</p><p> 積分考核管理:這個(gè)模塊是我們這個(gè)系統(tǒng)的一個(gè)重點(diǎn)模塊,班主任定性定量考核班委、學(xué)生處考核班主任、班級(jí)優(yōu)劣排
28、名都是在這個(gè)模塊進(jìn)行。</p><p> 班主任日常事務(wù)管理:這個(gè)模塊是考核班主任所有任務(wù)完成與否的一個(gè)模塊,通過這個(gè)模塊可以督促班主任和學(xué)生、學(xué)生家長(zhǎng)之間的聯(lián)系;班主任可以通過這個(gè)模塊了解自己的工作進(jìn)程;同時(shí),這個(gè)模塊也是學(xué)生處對(duì)班主任工作考核的依據(jù)之一。這個(gè)模塊只能班主任和學(xué)生處可以看到。</p><p> 用戶權(quán)限設(shè)置:可以設(shè)置用戶的權(quán)限,分為:只讀、增加和修改權(quán)限。只讀權(quán)限權(quán)限
29、最低,除了查看之外沒有任何別的權(quán)限。增加權(quán)限可以輸入數(shù)據(jù),比如班級(jí)和個(gè)人千分制的輸入,但是不能進(jìn)行修改。修改權(quán)限權(quán)限最高,除了讀寫外,還可以修改數(shù)據(jù)。</p><p> 登入登出管理:形成一個(gè)日志文件,從該模塊可以知道進(jìn)入該模塊的人和時(shí)間。</p><p> 消息公布留言板模塊:這個(gè)模塊實(shí)際上是一個(gè)班級(jí)的BBS,所有同學(xué)都可以在上面留言,留言上面的名字顯示是登入班主任管理系統(tǒng)的名字,可
30、以規(guī)范留言。班級(jí)有什么事情,及時(shí)在這里發(fā)布。學(xué)生有什么意見或建議,又不愿意和老師溝通的,可以在這里發(fā)表。同時(shí),學(xué)生家長(zhǎng)也可以通過這個(gè)模塊知道班級(jí)或?qū)W校動(dòng)態(tài),并且可以發(fā)表言論。這個(gè)模塊是學(xué)生、家長(zhǎng)和老師的一個(gè)溝通平臺(tái)。</p><p> 2.2班主任管理系統(tǒng)的部分實(shí)現(xiàn)</p><p> 班主任管理系統(tǒng)的實(shí)現(xiàn)是在我們畢業(yè)實(shí)踐小組的共同努力下完成的,我所作的工作是:</p>&
31、lt;p> 管理及協(xié)助小組成員如期的完成實(shí)踐項(xiàng)目。為此在首先的幾天中完成了人員的分工調(diào)度,并對(duì)整個(gè)系統(tǒng)做初步的分析,以搭建出初步的框架,好為以后的項(xiàng)目規(guī)劃奠定一定的基礎(chǔ)。</p><p> 為了保證項(xiàng)目團(tuán)隊(duì)按時(shí)保質(zhì)地完成項(xiàng)目目標(biāo),便于項(xiàng)目團(tuán)隊(duì)成員更好地了解項(xiàng)目情況,使項(xiàng)目工作開展的各個(gè)過程合理有序,因此我編寫了一份項(xiàng)目計(jì)劃書,把對(duì)于在項(xiàng)目生命周期內(nèi)的工作任務(wù)范圍、各項(xiàng)工作的任務(wù)分解等內(nèi)容做出的安排以書面
32、的方式,作為項(xiàng)目團(tuán)隊(duì)成員以及項(xiàng)目干系人之間的共識(shí)與約定,項(xiàng)目生命周期內(nèi)的所有項(xiàng)目活動(dòng)的行動(dòng)基礎(chǔ),項(xiàng)目團(tuán)隊(duì)開展和檢查項(xiàng)目工作的依據(jù)。</p><p> 在下一個(gè)階段中主要將實(shí)訓(xùn)的項(xiàng)目詳細(xì)的從整體到部分,從橫面到切面詳細(xì)的通過OO思想分析了一下,編寫出了項(xiàng)目詳細(xì)設(shè)計(jì)書,以將各個(gè)模塊的需求及如何實(shí)現(xiàn)手段及方法作出了詳細(xì)的設(shè)計(jì)說明。</p><p> 與此同時(shí)數(shù)據(jù)庫(kù)設(shè)計(jì)方面及界面設(shè)計(jì)方面的工作
33、也隨之同步進(jìn)行。</p><p><b> 登入登出功能部分:</b></p><p> 相應(yīng)的登錄界面圖見圖2-2:</p><p> 圖2-2 登錄界面圖</p><p> 登錄功能應(yīng)用是表現(xiàn):一個(gè)用戶通過瀏覽器訪問一個(gè)頁(yè)面。Web應(yīng)用展現(xiàn)一個(gè)登陸頁(yè)面要求用戶輸入有效的驗(yàn)證信息。用戶輸入了用戶名和密碼。此時(shí)我
34、們假設(shè)用戶提供的身份驗(yàn)證信息是正確的,經(jīng)過了驗(yàn)證過程,Web應(yīng)用允許用戶瀏覽他有權(quán)訪問的區(qū)域。用戶想退出時(shí),點(diǎn)擊退出按鈕,Web應(yīng)用要求用戶確認(rèn)他是否則真的需要退出,如果用戶確定退出,Session結(jié)束,Web應(yīng)用重新定位到登陸頁(yè)面。用戶可以放心的離開而不用擔(dān)心他的信息會(huì)泄露。如下是相關(guān)演示業(yè)務(wù)邏輯代碼:</p><p><b> //...</b></p><p>
35、; String action = request.getParameter("action");</p><p><b> // 登陸</b></p><p> if (action.equals("login")) {</p><p> logIn(request, response);<
36、;/p><p><b> }</b></p><p><b> // 登出</b></p><p> if (action.equals("logout")) {</p><p> logOut(request, response);</p><p>
37、<b> }</b></p><p> private void logIn(HttpServletRequest request, HttpServletResponse response)</p><p> throws ServletException, IOException {</p><p> HttpSession ses
38、sion = request.getSession();</p><p> String type = getString(request.getParameter("type"));</p><p> String username = getString(request.getParameter("username"));</p>
39、<p> String password = getString(request.getParameter("password"));</p><p> session.setAttribute("name", rs1.getString(1));//存放用戶姓名</p><p> session.setAttribute(&qu
40、ot;class", rs1.getString(2));//存放用戶所屬班級(jí)</p><p> session.setAttribute("type", rs1.getString(3));//存放用戶類型</p><p><b> }</b></p><p> private void logOut(Ht
41、tpServletRequest request, HttpServletResponse response)</p><p> throws ServletException, IOException {</p><p> session = request.getSession();</p><p> session.invalidate();</p
42、><p> response.sendRedirect("Templates/index.jsp");</p><p><b> }</b></p><p><b> //...</b></p><p> 通過示例程序,闡述了在一個(gè)Web應(yīng)用中實(shí)現(xiàn)這一功能。</p>
43、;<p> 用戶登錄是分類型登錄的,不同的用戶類型擁有不同的權(quán)限,對(duì)系統(tǒng)有不同的操作結(jié)果。</p><p><b> 具體權(quán)限如下:</b></p><p> 表2-1 權(quán)限分類圖</p><p> 若非認(rèn)證用戶以非法用戶名登錄不同類別用戶,則生成相應(yīng)錯(cuò)誤信息, 相應(yīng)的錯(cuò)誤信息圖見圖1 2-3:</p>&l
44、t;p> 圖2-3 錯(cuò)誤信息圖1</p><p> 當(dāng)然系統(tǒng)也提供對(duì)合法用戶在輸入錯(cuò)誤的信息時(shí)做出響應(yīng)的友好的報(bào)錯(cuò)信息, 相應(yīng)的錯(cuò)誤信息圖見圖2-4:</p><p> 圖2-4 錯(cuò)誤信息圖2</p><p> 登入系統(tǒng)過程后所產(chǎn)生的系統(tǒng)顯示也有所不同,按照默認(rèn)系統(tǒng)登入類別分為:教師,班委,學(xué)生3種類型。相應(yīng)的登陸信息圖1 圖2圖3 見圖2-5 2-6
45、 2-7</p><p> 圖2-5 登陸信息圖1 圖2-6登陸信息圖2</p><p> 圖2-7 登陸信息圖3</p><p> 安全認(rèn)證機(jī)制普遍采用的方法是從form中獲得用戶輸入的認(rèn)證信息,然后到LDAP (lightweight directory access protocol)或關(guān)系數(shù)據(jù)庫(kù)的安全域中進(jìn)行認(rèn)證。如果
46、用戶提供的認(rèn)證信息是有效的,登陸動(dòng)作往HttpSession對(duì)象中注入某個(gè)對(duì)象。HttpSession存在著注入的對(duì)象則表示用戶已經(jīng)登陸。</p><p><b> 演示相關(guān)代碼如下:</b></p><p><b> //...</b></p><p> private void logIn(HttpServlet
47、Request request, HttpServletResponse response)</p><p> throws ServletException, IOException {</p><p><b> ...</b></p><p> HttpSession session = request.getSession();//
48、創(chuàng)建SESSION對(duì)象</p><p> String type = getString(request.getParameter("type"));</p><p> String username = getString(request.getParameter("username"));</p><p> Stri
49、ng password = getString(request.getParameter("password"));</p><p> JFBean jf = new JFBean();</p><p><b> //橋接</b></p><p><b> try {</b></p>
50、<p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> } catch (ClassNotFoundException en) {</p><p> en.printStackTrace();</p><p><b> }</b></
51、p><p><b> try {</b></p><p> con = DriverManager.getConnection("jdbc:odbc:bysj", "sa", "");</p><p> sql = con.createStatement();</p>
52、<p><b> // 教師登陸</b></p><p> if (type.equals("teacher")) {</p><p><b> ...</b></p><p> session.setAttribute("islog", "yes&quo
53、t;);</p><p> ResultSet rs1 = sql.executeQuery(condition1);</p><p> rs1.next();</p><p> session.setAttribute("name", rs1.getString(1));</p><p> session.set
54、Attribute("class", rs1.getString(2));</p><p> session.setAttribute("type", rs1.getString(3));</p><p> response.sendRedirect("Templates/index.jsp");</p><
55、;p><b> } else {</b></p><p> session.setAttribute("error", "用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!");</p><p> response.sendRedirect("Templates/index.jsp");</p><
56、;p><b> }</b></p><p><b> }</b></p><p><b> // 學(xué)生登陸</b></p><p> if (type.equals("student")) {</p><p><b> ...&l
57、t;/b></p><p> session.setAttribute("islog", "yes");</p><p> ResultSet rs1 = sql.executeQuery(condition1);</p><p> rs1.next();</p><p> session
58、.setAttribute("name", rs1.getString(1));</p><p> session.setAttribute("class", rs1.getString(2));</p><p> session.setAttribute("type", rs1.getString(3));</p>
59、;<p> response.sendRedirect("Templates/index.jsp");</p><p><b> } else {</b></p><p> session.setAttribute("error", "用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!");</p>
60、;<p> response.sendRedirect("Templates/index.jsp");</p><p><b> }</b></p><p><b> }</b></p><p><b> // 班委登陸</b></p><
61、p> if (type.equals("monitor")) {</p><p><b> ...</b></p><p> session.setAttribute("islog", "yes");</p><p> ResultSet rs1 = sql.execut
62、eQuery(condition1);</p><p> rs1.next();</p><p> session.setAttribute("name", rs1.getString(1));</p><p> session.setAttribute("class", rs1.getString(2));</p
63、><p> session.setAttribute("type", rs1.getString(3));</p><p> response.sendRedirect("Templates/index.jsp");</p><p><b> } else {</b></p><p&
64、gt; session.setAttribute("error", "用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!");</p><p> response.sendRedirect("Templates/index.jsp");</p><p><b> }</b></p><p><
65、b> }</b></p><p><b> //...</b></p><p> 退出動(dòng)作就包含了簡(jiǎn)單的刪除用戶名以及對(duì)用戶的HttpSession對(duì)象調(diào)用invalidate()方法。清單2是從servlet中節(jié)選的一段代碼以此闡述退出動(dòng)作:</p><p> Listing 2 //...</p>
66、<p> session = request.getSession();</p><p> session.invalidate();</p><p> response.sendRedirect("Templates/index.jsp");</p><p><b> //...</b></p>
67、;<p><b> 系統(tǒng)登錄日志部分:</b></p><p> 相應(yīng)的日志管理界面圖見圖2-8:</p><p> 圖2-8 日志管理界面圖</p><p> 系統(tǒng)會(huì)保存每個(gè)用戶的登錄記錄,這些信息包括這個(gè)用戶的名字、登錄起始結(jié)束時(shí)間以及從何處登錄入系統(tǒng)的等等。它們被保存到數(shù)據(jù)庫(kù)文件的表中。</p><
68、;p> Rzjl表中保存了所有的登錄、退出信息,包括登錄時(shí)間和類型,這個(gè)文件一般只有l(wèi)ogin程序使用,通過用戶的UID,來在日志文件中查找相應(yīng)記錄,然后報(bào)告其最后一次登出時(shí)間和終端tty。然后, login程序就使用新的記錄更新這個(gè)文件。因此隨著系統(tǒng)正常運(yùn)行時(shí)間的增加,它的大小也會(huì)越來越大,增加的速度依賴于系統(tǒng)用戶登錄次數(shù)。因此可以利用這個(gè)日志用來查看用戶的登錄記錄。</p><p><b>
69、 相關(guān)代碼如下:</b></p><p><b> //存入日志</b></p><p> String logid = getString(request.getParameter("username"));// 登入ID</p><p> String logname = (String) sessi
70、on.getAttribute("name");// 登入姓名</p><p> Date time = new Date();</p><p> time.getTime();</p><p> String logtime = time.toString().substring(4, 20);// 登入時(shí)間</p><
71、;p> String condition2 = "insert into rzgl (rid,rname,intime) values ('"+ logid+ "'"+","+ "'"+ logname+ "'"+ ","+ "'" + logtime
72、 + "')";</p><p> jf.execUpdate(condition2);</p><p><b> //…</b></p><p><b> 用戶留言板部分:</b></p><p> 相應(yīng)的留言板界面圖見圖2-9:</p><
73、;p> 圖2-9 留言板界面圖</p><p> 留言板是一種電子便簽管理系統(tǒng),用CGI或其它腳本語(yǔ)言編寫的網(wǎng)絡(luò)應(yīng)用程序。在網(wǎng)絡(luò)用戶交流中有很大的作用,別人可以將他的資料和要求等保留在一個(gè)頁(yè)面上,以供其他人觀看。留言板可以提供完備的信息發(fā)布功能,有助于客戶收集網(wǎng)站的反饋信息,是客戶通過網(wǎng)絡(luò)收集信息的有力工具。 </p><p> 本系統(tǒng)采用留言板形式:"開放式&quo
74、t;開放式留言板,所有人都可以查看到他人的留言內(nèi)容。但只有用戶通過輸入用戶名和密碼登陸后才能發(fā)布留言。相應(yīng)留言界面圖見圖2-10:</p><p> 圖2-10 留言界面圖</p><p> 成功留言后返回本頁(yè)面。相應(yīng)的留言成功界面圖見圖2-11:</p><p> 圖2-11:留言成功界面圖</p><p> 留言板功能說明:1.
75、按照發(fā)言時(shí)間的先后順序,留言板自動(dòng)排序。</p><p> 2.留言板提供支持多條留言分頁(yè)顯示功能,使界面更簡(jiǎn)潔。</p><p> 3. 友好簡(jiǎn)、潔的顯示界面,便于用戶使用留言板; </p><p> 相關(guān)代碼演示://...</p><p> public class servlet extends HttpServlet {&
76、lt;/p><p> private static final long serialVersionUID = 1L;</p><p> public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p> throws ServletException, IOE
77、xception {</p><p> response.setContentType("text/html;charset=gb2312");</p><p> String action = request.getParameter("action");</p><p><b> // 留言</b&g
78、t;</p><p> if (action.equals("message")) {</p><p> message(request, response);</p><p> }private void message(HttpServletRequest request,</p><p> HttpServ
79、letResponse response) throws ServletException, IOException {</p><p> HttpSession session = request.getSession();</p><p> JFBean jf = new JFBean();</p><p> String s1 = (String) se
80、ssion.getAttribute("name");// 留言人名字</p><p> String s2 = getString(request.getParameter("textarea"));// 留言內(nèi)容</p><p> Date date = new Date();</p><p> date.getTi
81、me();</p><p> String a = date.toString();</p><p> String s3 = a.substring(4, 20);// 留言時(shí)間</p><p> String s = "'" + s3 + "'" + "," + "
82、9;" + s2 + "'" + "," + "'" + s1 + "'";</p><p> String condition = "insert into lyb (ltime,lcontent,lid) values " + "("</p>
83、<p> + s + ")";</p><p><b> try {</b></p><p> jf.execUpdate(condition);</p><p> } catch (Exception e) {</p><p> e.printStackTrace();<
84、/p><p><b> }</b></p><p> response.sendRedirect("Templates/message.jsp");</p><p><b> }</b></p><p><b> 總 結(jié)</b></p>
85、<p> 經(jīng)過一個(gè)項(xiàng)目的鍛煉,覺得自己大有進(jìn)步!</p><p><b> 現(xiàn)在總結(jié)一下:</b></p><p> 1、需求報(bào)告。 項(xiàng)目正式啟動(dòng)之前,盡可能多的搜集需求,盡可能清楚地描述需求,</p><p> 但是需求千萬不要在細(xì)節(jié)方面規(guī)定得太死,最好是抽象一點(diǎn)。反映商業(yè)策略等邏輯變</p><p>
86、; 化的部分尤其要靈活描述,這樣避免在設(shè)計(jì)的時(shí)候把這部分代碼寫得太死。實(shí)際上如</p><p> 果能確定所有的需求是最好的,這個(gè)我也想啊,不過現(xiàn)實(shí)中是不可能的,往往編碼的</p><p> 過程中會(huì)出現(xiàn)不斷的需求變更。這就要有足夠的程序設(shè)計(jì)水平來保證你的代碼可以應(yīng)付不斷變化的需求。</p><p> 2、系統(tǒng)設(shè)計(jì)。以前想象作一個(gè)項(xiàng)目必然是先由一個(gè)或者多個(gè)系
87、統(tǒng)架構(gòu)師,先做面</p><p> 面俱到的設(shè)計(jì),然后再由程序員們編碼實(shí)現(xiàn),哪知道我們這個(gè)項(xiàng)目卻要求每個(gè)人</p><p> 參與設(shè)計(jì)。我覺得這樣做很不錯(cuò),這樣可以使每個(gè)人都對(duì)這個(gè)系統(tǒng)有深入了解,最有</p><p> 可能產(chǎn)生較高質(zhì)量的程序,同樣可以減輕系統(tǒng)架構(gòu)師的負(fù)擔(dān),并且可以鍛煉每一個(gè)人!</p><p> 不過這個(gè)要求每個(gè)人都
88、有一定的設(shè)計(jì)水平,并且對(duì)業(yè)務(wù)了解。如果每個(gè)人設(shè)計(jì)一個(gè)子系統(tǒng),那么設(shè)計(jì)的時(shí)候就需要考慮各個(gè)子系統(tǒng)之間的對(duì)接問題,否則的話可能嚴(yán)重影響項(xiàng)目后期的進(jìn)度。</p><p> 3、編碼規(guī)范。編碼規(guī)范應(yīng)該是每個(gè)項(xiàng)目都有要求的,比如命名、大小寫、代碼</p><p> 風(fēng)格等,我覺得這個(gè)不是必需的,但是規(guī)定下來也有好處!</p><p> 4、文檔??赡芫幋a的人很不喜歡寫文
89、檔,我也不太喜歡寫文檔,特別是和代碼</p><p> 相關(guān)的文檔,每次代碼有一點(diǎn)改動(dòng),那么文檔就要作相應(yīng)的改動(dòng),應(yīng)次常常弄得</p><p> 文檔代碼不同步,這樣最終會(huì)導(dǎo)致文檔的不可信。這一點(diǎn)我深有體會(huì)! 我覺得</p><p> 最好是項(xiàng)目中配備專門的文檔編寫人員,并且在開發(fā)的過程中不要太在意文檔。還有開發(fā)的文檔可以借助一些第三方的工具來做。</p
90、><p> 5、資源管理。你開發(fā)的程序中要用到那些資源(比如資源文件、數(shù)據(jù)文件、配置</p><p> 文件)我想大家都應(yīng)該很清楚,那么這個(gè)資源怎么存放、怎么命名應(yīng)該在項(xiàng)目進(jìn)行</p><p> 指出定下來。如果編碼到后來再確定的話,可能引起不必要的麻煩。</p><p> 6、數(shù)據(jù)庫(kù)。如果有專門數(shù)據(jù)庫(kù)管理員和數(shù)據(jù)庫(kù)設(shè)計(jì)人員那么就好說了。
91、如果每個(gè)人都涉及到數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)的話(在每個(gè)人都參與設(shè)計(jì)的項(xiàng)目中),那么一定要注意不要重復(fù)。比如說很多日志表、一些通用的存儲(chǔ)過程大家共用就行了。</p><p> 7、人員分工、項(xiàng)目技術(shù)。在一個(gè)項(xiàng)目中,項(xiàng)目管理者必須清楚項(xiàng)目組的每一個(gè)成員的實(shí)力以及特長(zhǎng),而每個(gè)組員應(yīng)該被分配到他最適合的任務(wù),當(dāng)然很可能很多組員沒有突 出的特長(zhǎng),也可能項(xiàng)目管理者也不是很清楚團(tuán)隊(duì)每個(gè)人的實(shí)力,很多組員被分配到不適合自己的任務(wù),這
92、樣對(duì)整個(gè)項(xiàng)目來說都是和很危險(xiǎn)的。還有項(xiàng)目開始之前需要哪些技術(shù)因該清楚,并且組員們應(yīng)該準(zhǔn)備充分,否則如果要臨時(shí)學(xué)一門新技術(shù)的話是很危險(xiǎn)的,這樣很可能得不到高質(zhì)量的產(chǎn)品。</p><p> 項(xiàng)目還正在進(jìn)行中,我的經(jīng)驗(yàn)也在不斷積累中。我發(fā)覺,學(xué)習(xí)了很多理論知識(shí)之后,在經(jīng)過一定的實(shí)踐,收獲是巨大的。</p><p><b> 參考文獻(xiàn)</b></p>&l
93、t;p> 1 林上杰.林康司. JSP 2.0技術(shù)手冊(cè).電子工業(yè)出版社</p><p> 2 飛思科技產(chǎn)品研發(fā).JSP 應(yīng)用開發(fā)詳解(第二版).電子工業(yè)出版社</p><p> 3 Marty Hall,Larry Brown. Servlet與JSP核心編程(第2版).清華大學(xué)出版社</p><p> 4 耿祥義.張躍平.JSP實(shí)用教程.清華
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 班主任 管理 系統(tǒng)設(shè)計(jì)與實(shí)踐
- 班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 班主任 管理 系統(tǒng)設(shè)計(jì)與實(shí)踐
- 班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 班主任 管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 11班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 11班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 1班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 畢業(yè)設(shè)計(jì)論文-班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 畢業(yè)設(shè)計(jì)論文-班主任管理系統(tǒng)設(shè)計(jì)與實(shí)踐
- 班主任管理系統(tǒng).rar
- 班主任管理系統(tǒng).rar
- 班主任管理
- -java-班主任管理系統(tǒng)
- 高青-班主任管理系統(tǒng).doc
- 高青-班主任管理系統(tǒng).doc
- 班主任小論文-試論班主任管理藝術(shù)
- 班主任素養(yǎng)與班級(jí)管理
- 《班主任工作的理論與實(shí)踐》講義
- 基于一種新型班主任管理模式的班主任工作管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論