版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫培訓(xùn)教材太原科技大學(xué)數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告系 院應(yīng)用科學(xué)學(xué)院年級2013級專業(yè)信息與計(jì)算科學(xué)131802學(xué)號(hào)201318030204學(xué)生姓名XXXXXX指導(dǎo)教師姓名XXXXXX課程設(shè)計(jì)(論文)題目 太原科技大學(xué)學(xué)生管理系統(tǒng)頁腳內(nèi)容I數(shù)據(jù)庫培訓(xùn)教材目錄第一章緒論11.1 研究的背景及意義 11.1.1 選題的背景11.1.2 研究的意義11.2 系統(tǒng)目標(biāo)21.3 應(yīng)用技術(shù)21.3.1 Servlet21.3.2 JS技術(shù)31.3.3 JDBC31.3.4 MySQL myeclipse41.3.6 Tomcat41.3.7 JSTL 簽41.3.78 XML5第二章需求分析52.
2、1 功能需求52.1.1 系統(tǒng)模塊分解 52.1.2 功能需求描述62.2 非功能需求 92.2.1 性能需求92.2.2 其它需求10第三章總體設(shè)計(jì) 123.1 運(yùn)行環(huán)境123.2 模塊結(jié)構(gòu)13第四章數(shù)據(jù)庫設(shè)計(jì)174.1 概念結(jié)構(gòu)設(shè)計(jì) 174.1.1 設(shè)計(jì)思路174.1.2 E-RB 174.2 邏輯結(jié)構(gòu)設(shè)計(jì)214.2.1 設(shè)計(jì)思路214.3 物理結(jié)構(gòu)設(shè)計(jì) 21頁腳內(nèi)容”數(shù)據(jù)庫培訓(xùn)教材4.3.1 存取方式214.3.2 存儲(chǔ)結(jié)構(gòu)22第五章界面設(shè)計(jì)275.1 界面關(guān)系圖275.2 界面設(shè)計(jì)成果 285.2.1 登錄界面285.2.2 功能菜單界面 31第六章詳細(xì)設(shè)計(jì)406.1 登錄注冊設(shè)計(jì)40
3、6.1.1 算法描述 406.1.2 程序流程圖416.1.3 1.3關(guān)鍵類說明 416.2 用戶管理設(shè)計(jì)436.2.1 程序流程圖 436.2.2 關(guān)鍵類說明 43第七章編碼457.1 部分核心代碼457.1.1 用JDB筮接JAVA web程與數(shù)據(jù)庫 457.1.2 登陸注冊517.2 代碼優(yōu)化分析 63總結(jié)65參考文獻(xiàn)66頁腳內(nèi)容V數(shù)據(jù)庫培訓(xùn)教材第一章緒論1.1 研究的背景及意義1.1.1 選題的背景隨著教育事業(yè)的不斷發(fā)展,學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量及其信息量的急劇增加, 有關(guān)學(xué)生的各種信息處理也隨之展開。學(xué)生管理信息系統(tǒng)應(yīng)運(yùn)而生了,它可用來管理 學(xué)生信息與提高系統(tǒng)管理工作的效率。學(xué)生
4、信息管理系統(tǒng)把Visual Basic(前臺(tái)開發(fā))與MYSQL后臺(tái)管理)有機(jī)地結(jié)合,并運(yùn)用流行的 ADO?相關(guān)技術(shù),完成學(xué)生信息的 規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,從而可大大減少該管理上的工作量。數(shù)據(jù)庫在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的好壞將直接對 應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。 合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)庫存 儲(chǔ)的效率,保證數(shù)據(jù)的完整性和一致性。同時(shí),合理的數(shù)據(jù)結(jié)構(gòu)也將有利于程序的順 利實(shí)現(xiàn)。1.1.2 研究的意義學(xué)生學(xué)籍管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢,更新與維護(hù),使用方 便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語言編寫,用SQLSe
5、rver20數(shù)據(jù)庫 作為后臺(tái)的數(shù)據(jù)庫進(jìn)行信息的存儲(chǔ), 用SQ昭句完成添加,查詢,修改,刪除的操作。 用JDBG區(qū)動(dòng)實(shí)現(xiàn)前臺(tái)Java與后臺(tái)SQ嗷據(jù)庫的連接。Java語言跨平臺(tái)性強(qiáng),可以在 Window舜系統(tǒng)下使用,方便簡單,安全性好。1.2 系統(tǒng)目標(biāo)該系統(tǒng)主要建立一個(gè)基于 B/S模式的實(shí)驗(yàn)室信息管理系統(tǒng),用戶和管理員不需要下載客戶 端就可以通過瀏覽器訪問學(xué)生管理系統(tǒng),快捷方便,從網(wǎng)頁獲取當(dāng)前的學(xué)生信息,及時(shí)的 更新信息,修改信息,保證信息的正確性和時(shí)效性,從而更好更快捷更便利的管理學(xué)生信 息,實(shí)現(xiàn)學(xué)生信息的直觀可視化和及時(shí)可靠化,本系統(tǒng)主要針對與系統(tǒng)相關(guān)的兩類用戶實(shí) 現(xiàn)信息的管理:1對于實(shí)驗(yàn)室管
6、理人員:可以登陸到管理員頁面,可以方便的進(jìn)行學(xué)籍信息管理、班級信 息管理、成績信息管理、用戶管理和系統(tǒng)管理。2.對于教師:教師可以進(jìn)行注冊成為網(wǎng)站的用戶,并可以通過登錄進(jìn)入普通用戶界面以后 來學(xué)籍信息管理、班級信息管理、成績信息管理和系統(tǒng)管理,但是無法查看和修改其他的 用戶的信息。1.3應(yīng)用技術(shù)1.3.1 ServletServle層服務(wù)器端的Java®用程序,具有獨(dú)立于平臺(tái)和協(xié)議的特性,可以生成動(dòng)態(tài)的 WebM 面。它擔(dān)當(dāng)客戶請求與服務(wù)器響應(yīng)的中間層。Servlet是位于 Web服務(wù)器內(nèi)部的服務(wù)器端的Java®用程序,與傳統(tǒng)的從命令行啟動(dòng)的 Java®用程序不同
7、,Servlet由Web服務(wù)器進(jìn)行 加載,該Web服務(wù)器必須包含支持Servlet的JavoSi擬機(jī)。最早支持Servle肢術(shù)白是JavaSoft勺Java Web Serve此后,一些其它的基于 Java的Web服 務(wù)器開始支持標(biāo)準(zhǔn)的Servlet AR I Servle的主要功能是交互式地瀏覽和修改數(shù)據(jù),生成動(dòng)態(tài) Web內(nèi)容。這個(gè)執(zhí)行的過程為:客戶端發(fā)送請求至服務(wù)器端;服務(wù)器將請求信息發(fā)送至 Servlet Servle也成響應(yīng)結(jié)果并將其傳給服務(wù)器,響應(yīng)內(nèi)容動(dòng)態(tài)生成,通常取決于客戶端的 請求,服務(wù)器將響應(yīng)返回給客戶端,ServletW起來與s通常的Java程序無很大差別。Servlet 導(dǎo)
8、入特定的屬于Java ServletAPI的程序包。因?yàn)槭菍ο笞止?jié)碼,可動(dòng)態(tài)地從網(wǎng)絡(luò)加載,可 以說ServletX寸Serve就如同Applet對Client一樣。但是,由于 Servletil行于Serve葉,它們 并不需要一個(gè)圖形用戶界面。從這個(gè)角度來說,Servle也被稱為Faceless ObjecL個(gè)Servlet 就是Java編程語言中的一個(gè)類,它可以被用來擴(kuò)展服務(wù)器的性能,服務(wù)器上駐留著可以通 過“請求-響應(yīng)”編程模型來訪問的應(yīng)用程序。盡管Servlet以對任何類型的請求產(chǎn)生響應(yīng), 但通常只用來擴(kuò)展Web服務(wù)器的應(yīng)用程序。1.3.2 JS技術(shù)Java Server Pages術(shù)是
9、一項(xiàng)純Javsff臺(tái)的技術(shù),它主要用來產(chǎn)生動(dòng)態(tài)網(wǎng)頁的內(nèi)容。 在傳統(tǒng) 的網(wǎng)頁HTMLC件中加入Jav刑序片段和JSPg記,就構(gòu)成了 JS刖頁。當(dāng)WebK務(wù)器接收 到訪問JSFS頁的請求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTM臍式返回給客戶。JSP1基于Java Servlet以及整個(gè)Java體系的Web開發(fā)技術(shù),利用這一技術(shù)可以建立 先進(jìn)、安全、快速和跨平臺(tái)的動(dòng)態(tài)網(wǎng)頁。1.3.3 JDBCJDB加一組Java語言編寫的類和接口組成,使用內(nèi)嵌式的 SQL主要實(shí)現(xiàn)三方面的功能: 建立與數(shù)據(jù)庫的連接,執(zhí)行SQ聲明以及處理SQ執(zhí)行結(jié)果。JDB改持基本的SQ助能,使 用它可方便地與不同的關(guān)系型數(shù)
10、據(jù)庫建立連接,進(jìn)行相關(guān)操作,并無需再為不同的 DBMS 分別編寫程序。1.3.4 MySQLMySQ是一個(gè)多用戶、多線程的SQ嗷據(jù)庫,是一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的應(yīng)用,它由一個(gè) 服務(wù)器守護(hù)程序mysqld和很多不同的客戶程序和庫組成。MySQ的快速和靈活性足以滿足 一個(gè)網(wǎng)站的信息管理工作。因?yàn)樵S可證的靈活,任何人都可以以任何目的免費(fèi)使用,修改, 和分發(fā)PostgreSQL不管是私用,商用,還是學(xué)術(shù)研究使用。命令執(zhí)行速度快,也許是現(xiàn) 今最快的;簡單有效的用戶特權(quán)系統(tǒng)。1.3.5 myeclipseEclipse是一個(gè)非常優(yōu)秀的集成開發(fā)環(huán)境,它旨在簡化用于多操作系統(tǒng)軟件工具的開發(fā)過程,可以用于管理多
11、種開發(fā)任務(wù),其中包括測試、性能調(diào)整以及程序調(diào)試等,而且還可以集成來 自多個(gè)供應(yīng)商的第三方應(yīng)用程序開發(fā)工具。通過集成大量的插件,myeclipse勺功能可以不斷 擴(kuò)展,以支持各種不同的應(yīng)用。myeclipse平臺(tái)是一個(gè)成熟的、精心設(shè)計(jì)的、可擴(kuò)展的體系結(jié)構(gòu),其組成結(jié)構(gòu)如圖所示用myeclipseff發(fā)的插件,可以適應(yīng)多平臺(tái)的需要,且具有良好的可擴(kuò)展性和靈活性。myeclipse1一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè) 框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,myeclipse附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java開發(fā)工具(Java Developm
12、ent ToolsJDT)1.3.6 TomcatTomca服務(wù)器是Apache Group Jakarta、組開發(fā)的一個(gè)免費(fèi)服務(wù)器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費(fèi)獲得,你可以自由地對它進(jìn)行擴(kuò)充。Tomca服務(wù)器的兼容性很好,如WebLogi嘏務(wù)器采用其為 Wet®務(wù)器引擎,Jbuilder將其作為標(biāo)準(zhǔn)的測試服 務(wù)器,Su心司也將其作為JSPK術(shù)應(yīng)用的示例服務(wù)器。但是Tomca服務(wù)器有眾多大軟件公 司的支持,而且服務(wù)器的性能穩(wěn)定,其發(fā)展前景很好。本次開發(fā)使用Tomcat7.x1.3.7 JSTL 簽JSTLI apache對EL達(dá)式的擴(kuò)展(也就是說JST依
13、賴EL , JST是標(biāo)簽語言! JST標(biāo)簽使用 以來非常方便,它與JSPM乍標(biāo)簽一樣,只不過它不是js同置的標(biāo)簽,需要我們自己導(dǎo)包,以及指定標(biāo)簽庫而已!如果你使用 MyEclipseFF發(fā)JavaWeb那么在把項(xiàng)目發(fā)布到 Tomcat時(shí),你會(huì)發(fā)現(xiàn),MyEclipse 會(huì)在lib目錄下存放jstl的Jar包!如果你沒有使用 MyEclips肝發(fā)那么需要自己來導(dǎo)入這個(gè) JST的 Jar包:jstl-12jar。1.3.78 XMLXML可擴(kuò)展的標(biāo)識(shí)語言(eXtensibleMarkupLanguage其先驅(qū)是SGML HTML SGML通用 標(biāo)識(shí)語言標(biāo)準(zhǔn)(StandardGeneralizedMa
14、rkupLanguage是國際上定義電子文件結(jié)構(gòu)和內(nèi)容描 述的標(biāo)準(zhǔn),是一種非常復(fù)雜的文檔結(jié)構(gòu),主要用于大量高度結(jié)構(gòu)化數(shù)據(jù)的防衛(wèi)區(qū)和其它各 種工業(yè)領(lǐng)域,便于分類和索引。同 XML1比,SGM莊義的功能很強(qiáng)大,然而它不適于 Web 數(shù)據(jù)描述,而且價(jià)格非常昂貴。第二章需求分析2.1 功能需求2.1.1 系統(tǒng)模塊分解學(xué)生信息管理系統(tǒng)的總體功能由以下幾大模塊構(gòu)成:學(xué)籍信息管理、班級信息管理、成績信息管理、用戶管理和系統(tǒng)管理如下圖所示:總體框架圖2 -1系統(tǒng)功能模塊分解圖2.1.2 功能需求描述1)學(xué)籍信息管理模塊描述:用戶在注冊成功后,用合法的賬號(hào)密碼登陸管理系統(tǒng)頁面。在頁面的公告欄 中,管理員可以及時(shí)
15、發(fā)布公告,提醒用戶一些需要注意的信息,由于學(xué)生信息的變動(dòng), 管理員需要時(shí)常改動(dòng)學(xué)生信息,通過本系統(tǒng),可以實(shí)現(xiàn)學(xué)生學(xué)號(hào)、姓名、性別、班級、 出生日期等的添加、查看、修改和刪除。用例圖:圖2 -2學(xué)生管理子系統(tǒng)用例圖2)班級選課信息管理模塊描述:班級信息管理主要包括班號(hào)、年紀(jì)、班主任、教室的添加、查看、修改和刪 除。由于老師調(diào)動(dòng),任職期的更改等原因,班級的班主任隨時(shí)可能發(fā)生更改,需要及 時(shí)修改保證信息的準(zhǔn)確性。用戶可以通過查看信息來清楚明了的指導(dǎo)該學(xué)校所有班級 的詳細(xì)準(zhǔn)確的班級信息。用例圖:圖2 -3學(xué)生管理子系統(tǒng)用例圖3)成績信息描述:主要包括了學(xué)生的考好,姓名,學(xué)號(hào),班級,課程的名稱,獲得的成
16、績。管理員可以用此來完成學(xué)生信息的統(tǒng)計(jì)和成績的登記。同時(shí)也可以對這些信息進(jìn)行刪除、添加、查看和修改操作,以此來確保成績信息的真實(shí)可靠性。用例圖:圖2 -3學(xué)生管理子系統(tǒng)用例圖4)用戶管理模塊描述:由于在實(shí)際過程中,有些用戶可能會(huì)因?yàn)檩^長時(shí)間沒有使用系統(tǒng)而忘記了本 人的信息,這是就可以找管理員進(jìn)行用戶信息的查看,其次也可以通過管理員直接添 加一個(gè)用戶以得到前臺(tái)頁面的操作權(quán)限,還可以進(jìn)行信息的修改和注銷。用例圖:圖2 - 4用戶管理子系統(tǒng)用例圖圖2 - 5實(shí)驗(yàn)室管理員管理子系統(tǒng)用例圖2.2非功能需求2.2.1 性能需求1)最大并發(fā)用戶數(shù):15 (因數(shù)據(jù)庫同時(shí)訪問人數(shù)限制導(dǎo)致)2)同時(shí)在線人數(shù):10
17、03)訪問高峰時(shí)期同時(shí)在線人數(shù):3004)訪問高峰時(shí)期同時(shí)提交事務(wù)人數(shù):305)高峰時(shí)期系統(tǒng)響應(yīng)時(shí)間:10s以內(nèi)注:以上信息為開發(fā)人員估計(jì)所得,具體情況具體對待。2.2.2 其它需求精度用戶名要求長度不超過3-20個(gè)字符密碼長度要求為3-20個(gè)字符。日期:精確到某年某月某日軟件需求1、Windows XPS作系統(tǒng);2、SQ擻據(jù)庫;3、MyEclipse9.葉發(fā)工具;4、Tomcat 7.刈艮務(wù)器;5、SQLyogTunnel.php MySq®工具硬件需求1、Web服務(wù)器1臺(tái);2、數(shù)據(jù)庫服務(wù)器1臺(tái);3、備份服務(wù)器1臺(tái);4、開發(fā)服務(wù)器1臺(tái);5、硬件防火墻1臺(tái);6、軟件防火墻服務(wù)器1臺(tái);
18、7、千兆路由器1臺(tái);8、10M網(wǎng)絡(luò)寬帶1條。頁腳內(nèi)容68第三章總體設(shè)計(jì)3.1運(yùn)行環(huán)境1)設(shè)備客戶程序硬件要求:具有 Pentium II處理器且滿足以下要求的計(jì)算機(jī):最低 512M內(nèi)存, 最小20G則盤,鼠標(biāo),鍵盤。WEBK務(wù)器硬件要求:具有Pentium IV處理器且滿足以下要求的計(jì)算機(jī):最低 512M時(shí) 存,最小80GB®盤,鼠標(biāo),鍵盤。2)支持軟件客戶程序軟件:Windows98/2000/XP 或更高版本IE6.0或者更高版本,F(xiàn)irefox等瀏覽器網(wǎng)絡(luò)支持WEE® 務(wù)器軟件:Tomcat 7.0Windows98/2000/XP 或更高版本數(shù)據(jù)庫服務(wù)器軟件Wind
19、ows98/2000/XP 或更高版本數(shù)據(jù)庫:XML3.2模塊結(jié)構(gòu)1)本小節(jié)從管理員用戶使用的角度出發(fā),列出了系統(tǒng)所提供的各個(gè)功能,系統(tǒng)的各功能模塊如下表所?。罕?-1系統(tǒng)功能模塊列表廳P功能模塊名稱子功能模塊名稱備注1.首頁1.1.注冊1.2.登錄2.管理員模塊2.1.學(xué)生學(xué)籍信息2.1.1.添加學(xué)籍信息2.1.2.修改學(xué)籍信息2.1.3.查看學(xué)籍信息2.1.4.刪除學(xué)籍信息2.2.班級信息管理2.2.1.添加班級信息2.2.2.修改班級信息2.2.3.查看班級信息2.2.4.刪除班級信息2.3成績信息管理2.3.1成績信息添加2.3.2成績信息修改2.3.3成績信息查看2.3.4成績信息刪
20、除2.4用戶管理2.4.1添加用戶2.4.2修改用戶信息2.4.3查看用戶信息2.4.4 刪除用戶信息2.5系統(tǒng)管理2.5.1修改自己登陸密碼2.5.2其他功能有待開發(fā)3用戶模塊3.5查看信息3.6修改登陸密碼第四章數(shù)據(jù)庫設(shè)計(jì)4.1 概念結(jié)構(gòu)設(shè)計(jì)4.1.1 設(shè)計(jì)思路概念模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)。概念設(shè)計(jì)階段的主要任務(wù)和目標(biāo)是根據(jù)需求分析的結(jié)果找出所有數(shù)據(jù)實(shí)體,畫出對應(yīng)的E-R圖。對于較復(fù)雜的系統(tǒng),通常首先要根據(jù)各個(gè)用戶對數(shù)據(jù)和使用權(quán)限的不同畫出各自對應(yīng)的局部E-R圖,然后把各個(gè)局部E-R綜合起來形成系統(tǒng)的整體ER圖。所以就針對本系統(tǒng)來說,根據(jù)實(shí)際業(yè)務(wù),首先抽象學(xué)生學(xué)籍信息、班級 信息管理、
21、成績管理、用戶等4個(gè)實(shí)體,再根據(jù)業(yè)務(wù)的需求分析出各個(gè)實(shí)體所擁有的屬性, 并以此設(shè)計(jì)出系統(tǒng)的概念模型。4.1.2 E-RB圖4- 2 -1系統(tǒng)主頁面E-R圖管舞信息懾俄液籍信息刪除學(xué)籍信息圖4- 2 W實(shí)驗(yàn)科目模塊E-R0圖4- 2 2選課信息管理E-RS圖4- 2 W用尸信息管理E-R0圖4- 2-4系統(tǒng)主頁面管理E-R圖4.2 邏輯結(jié)構(gòu)設(shè)計(jì)4.2.1 設(shè)計(jì)思路邏輯設(shè)計(jì)階段的主要任務(wù)和目標(biāo)是根據(jù)概念設(shè)計(jì)的結(jié)果設(shè)計(jì)出數(shù)據(jù)庫的邏輯結(jié)構(gòu)模式,包 括全局模式和各個(gè)外模式。對于本系統(tǒng)來說,管理員在使用本系統(tǒng)時(shí),必須先成功注冊, 然后用注冊的張?zhí)柡兔艽a進(jìn)行登陸操作,進(jìn)入系統(tǒng)主頁面。本系統(tǒng)包括學(xué)籍信息管理、
22、班 級信息管理、成績信息管理、用戶管理和系統(tǒng)管理五大模塊,普通用戶不具有用戶管理這 個(gè)模塊。在實(shí)驗(yàn)室科目這個(gè)模塊中又包含了學(xué)號(hào)、姓名、性別、班級、出生日期、入學(xué)日 期這六個(gè)的模塊,班級信息包含了班號(hào)、年紀(jì)、班主任姓名、教室這四個(gè)小的模塊,成績 信息模塊包含考好、班級、學(xué)生名字、學(xué)號(hào)、課程、成績這六個(gè)小的模塊,用戶管理包含 了用戶名、密碼、性別三個(gè)小的模塊,管理員可以通過系統(tǒng)對每個(gè)大模塊下的小模塊進(jìn)行 增改刪查等操作。4.3 物理結(jié)構(gòu)設(shè)計(jì)4.3.1 存取方式數(shù)據(jù)庫結(jié)構(gòu)的物理設(shè)計(jì)是指對一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)的過程,主要是設(shè)計(jì)表結(jié)構(gòu)。系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)中,實(shí)體對應(yīng)于表,實(shí)
23、體的屬性對應(yīng)于表的列,實(shí)體之間的關(guān)系成為表的約束?;旧鲜菍⑦壿嬙O(shè)計(jì)中的實(shí)體轉(zhuǎn)換成物理設(shè)計(jì)中的表,而本系統(tǒng)也是如此是通過關(guān)系表的形式存取數(shù)據(jù)。4.3.2 存儲(chǔ)結(jié)構(gòu)表4-1系統(tǒng)數(shù)據(jù)庫組成表數(shù)據(jù)庫名:userdemo廳P表名標(biāo)簽說明功能說明1user表普通用戶存儲(chǔ)用戶的相關(guān)信息2student表學(xué)生學(xué)籍信息存儲(chǔ)學(xué)生學(xué)籍的信息3Cla表班級信息班級信息4grade表學(xué)生成績信息存儲(chǔ)學(xué)生成績信息的信息表4-2用戶信息表表名:user序號(hào)列名數(shù)據(jù)類型長度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1usernamevarchar255否2passwordvarchar255否3sexvarchar255否表4-4學(xué)生
24、學(xué)籍信息表名:student序號(hào)列名數(shù)據(jù)類型長度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1Stunumvarchar255否2stunamevarchar255否3stusexvarchar255否4stuclavarchar255否5stubirthvarchar255否6stutoschvarchar255否表4-5b班級信息表表名:cla序號(hào)列名數(shù)據(jù)類型長度小數(shù)位標(biāo)識(shí)主鍵允許空默認(rèn)值說明1clanumvarchar255否2clagravarchar255否3clateavarchar255否4claroomvarchar255否表4-6成績信息表表名:grade序號(hào)列名數(shù)據(jù)類型長度小數(shù)位標(biāo)識(shí)主鍵
25、允許空默認(rèn)值說明1gradnumvarchar255否2gradclavarchar255否3gradxuevarchar255否4gtadnamevarchar255否5gradprojvarchar255否6gradevarchar255否第五章界面設(shè)計(jì)5.1界面關(guān)系圖5- 1界面關(guān)系圖注:主頁面到班級信息管理、成績管理、用戶管理的流程圖和上面類似。5.2界面設(shè)計(jì)成果5.2.1登錄界面太原科技大學(xué)學(xué)生管理系統(tǒng)毒口口 .f I圖5-1登錄界面圖5-2注冊界面,T-f¥4l4 UHETTF! tw *n*HCV a,EC*WM,gT太原科技大學(xué)學(xué)生管理用戶雷蘭短筆管隹請注意系統(tǒng)公告圖
26、5-3管理員登錄界面T 咔* 3i.lL, .MJJtfri . fcH-t J 正式它8向 r , stimu e Kt*"" h"m"m ti.ruaj zS'if * JJ -二-MM* -ijrtoa -月面加* Si®' HRtO 修*立就太原科技大學(xué)學(xué)生管理系統(tǒng)請注意系統(tǒng)公告!圖5-3普通用戶登錄界面5.2.2功能菜單界面學(xué)生信息管理RT三I查衣再畢主歐誣道陸圖5-4學(xué)生信息管理主頁面ntiiij fd 峨心口1rxj!看曲曲.呼門鼻, ii>i昆卜刈景堂,貴毓峰* Pllfln i-SltM-0* rar F
27、EW W,.同 HFFBfcmj/跟),vfTLPH 莫*。i-箕生t?一 Uldii - 幫吃山-學(xué)生信息管理吊H把包判得一學(xué)號(hào)艮劇趾強(qiáng)出里H蜩九學(xué)H用 次自muuimH三男L;曲159中3月日二.E.J| 至;埴JOIHICIOIOI IL 冕1J1.EX)1期45盯口su隼 M fti ±J£_0匕底加一那扇土 之情息耳麗啾“1而1uu_J1ijw”宦. I他之ML圖5-5查看學(xué)籍頁面圖5-6添加學(xué)生學(xué)籍信息頁面父母為 SfiU fiCWJXJRi-Th 制)t哦”. e 3-1亂發(fā)昌s*電*am 上在ea爆.:1 國 Mr 巧F MMmn工 國3ii£t&
28、#171;e Is“1 HLtfJU- f “aw2、主口/-! . fltftlff L.打同 -Jttt: IXI * 元L 國 F iA.PJ - W Rilt W 'd應(yīng)華人丈單救箔處學(xué)生信息管理缸*生充眄百言主慘改學(xué)生.信感半號(hào)林古包性別R就蜜1W01出生日期上手口期豆,值卻口|14頸I圖5-7修改學(xué)生學(xué)籍用戶空Wb)妣|單其UU 工具點(diǎn)1寓電與 工u £x=it < n心出t *oma回茬曲L度學(xué)生信息管理avri學(xué)丐 勝相H府 MA比工口卻 AfEffl 嗔目紀(jì)"1功4Hm技三 工 i:isoiI熱啤爭日廣日 xngg同怪強(qiáng) 則偉咖口叫加片壬
29、163; 鼻 uihl;小仃口1 .;布彳作KMf,中四期邨量堂女 僧曳成“中比1; " 1加坪一隊(duì).;門,;道強(qiáng)伊,七說圖5-7刪除用戶/印點(diǎn)大單教翳處班飄信息班號(hào) 】L M ' 修整昆 | 群圖5-7班級信息1您為結(jié)找丈軍教蠢處AC A.DUW- AFFAIRS OFFICE r TAMJJkN- AifVEfWTY OP SCEHeE. JA49 TEeHHACdV班級信息管理班號(hào)年紀(jì)出范任慨宇操作121E01大二在二16=216一戰(zhàn)出隹L2JtO2Q弦四141-121S03六三界五16=218像芭州屋信計(jì)13工眈二大三馬洋16=;1S一漢SLEL圖5-8查看、修改、刪
30、除班級信息添加選猊信息圖5-9添加班級信息修改班級信息圖5-10修改班級信息領(lǐng)士以緯抵大冬教簿處ACMKhK AFFARS OFHCF c TAIYUAM UMVERSITY Off SCKN« AW TEMWM.OQY學(xué)生成績信息管理圖5-11學(xué)生成績信息管理可士左號(hào)族以教務(wù)處AfJLMNie AFFUIS CSTTKE . TU¥LU.M UNTVEHSTTV M QEMeE JLW TKHMtM.aaV學(xué)生成績信息管理如學(xué)至咸哦小宜香腐日舉生鹿a后ES®字號(hào)起之課程分?jǐn)?shù)12352S0L12J1L山123 英:二M:口匕心1.12削能生建1;41"!
31、1;412J12J 1;4篋威m圖5-12查看、刪除、修改修改成績信息號(hào)城大單救務(wù)處用戶管理作員:都晨莖淆加用戶I查看用戶歡迎歡迎,熱烈歡迎!圖5-13用戶信息管理主頁面(管理員權(quán)限)用戶列表圖5-14查看、刪除頁面(管理員權(quán)限)添加用戶用戶宅網(wǎng)U受密碼回嚼認(rèn)法螞,法日II112 34S67a1011 JZ I314IfI士17IB19203122M?52*20班機(jī)31W應(yīng)坤技夫享教務(wù)員圖5-14添加用戶信息(管理員權(quán)限)OFFKE B TJUTUim UHIYEHmT PF KIEJKlt AW TLGhMCKLKT編輯用戶圖5-15修改用戶信息(管理員權(quán)限)圖5-16主要工具使用展示-my
32、Eclipse必匕 MySQL CoKBand. Ldne ClientEnter password: *We leone to MySQL nonitDr.Vour MSQL connection id Is 52Commands end ifitJi ; or g.to seruei* uersion5 B 0 . 24ac oFiriun itjy-ntType J lie Ip; * or *5' f or help.Tvpe 1 cJ to cler the IbuFfer.mvsql> use staERROR 1049 42000): Unknoun databas
33、e fstu1圖5-17主要工具使用展示-mySql第六章詳細(xì)設(shè)計(jì)6.1 登錄注冊設(shè)計(jì)6.1.1 算法描述在用戶輸入用戶名密碼并選中用戶種類以后,將數(shù)據(jù)提交到服務(wù)器,先檢查用戶的類型,再根據(jù)用戶類型并讀取出用戶名將其與數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行核對,查看數(shù)據(jù)庫中是否存在該用戶名,如果存在再核對其輸入的密碼是否正確,當(dāng)用戶名和密碼都正確時(shí)則完成驗(yàn)證并跳轉(zhuǎn)到成功頁面;如果用戶名不正確則不必核對密碼直接提示輸入信息有誤,需要重新輸入用戶名和密碼。在注冊時(shí),用戶填寫完信息后提交給服務(wù)器后,服務(wù)器先讀取用戶名 與數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行核對,如果該用戶名存在則提示用戶該用戶已存在。6.1.2程序流程圖開始 輸入 1戶
34、名密碼是J._q點(diǎn)擊注冊 hz 輸入注冊 信息是用戶和密碼息*王.,用戶'名是否、,用聲名是否、<為空:y為,空/連接數(shù)據(jù)用戶是否存.庫用戶表在一用戶q否存.否*提三密碼是否為.5上q空/登陸成功"信息i一 一、存取用戶登陸關(guān)閉數(shù)據(jù)庫關(guān)閉數(shù)據(jù)庫信息,跳轉(zhuǎn)連接連接圖6- 1登錄注冊程序流程圖6. 1.3關(guān)鍵類說明DB:負(fù)責(zé)數(shù)據(jù)庫連接的類,包含了連接的創(chuàng)建、數(shù)據(jù)庫的關(guān)閉、對象;>提示用戶7gL二存在曰 提示密碼 X正+不能為空創(chuàng)建預(yù)處理對象,結(jié)果集審核注冊信User用戶實(shí)體類,即JavaBean囊括了用戶的屬性和get、setter方法;UserDAO DAO1處理數(shù)
35、據(jù)實(shí)現(xiàn)接口類,定義了讀者業(yè)務(wù)操作的方法;UserServiceservice層用戶相關(guān)業(yè)務(wù)的方法類,在I類中有用戶登錄驗(yàn)證方法 public boolean check(Stringusername,String password)T法,實(shí)現(xiàn)用戶名和密碼的驗(yàn)證,通過方法publicboolean save(String username, String passwor蟻用戶的注冊;Regist負(fù)責(zé)注冊處理并跳轉(zhuǎn)的Servle樓I,在該類的doGet(方法中調(diào)用UserService中的save()方法將用戶提交的信息提交到服務(wù)器完成注冊,并根據(jù)save()勺返回值跳轉(zhuǎn)到相應(yīng)的頁面。Login:
36、負(fù)責(zé)登錄處理并跳轉(zhuǎn)的 Servlet,在I類的doGet(方法中調(diào)用UserService中的方法進(jìn)行用戶名和密碼的驗(yàn)證,并根據(jù)驗(yàn)證結(jié)果跳轉(zhuǎn)到相應(yīng)的頁面。6.2用戶管理設(shè)計(jì)6.2.1程序流程圖連接數(shù)據(jù)庫 讀取用尸信 用戶表 息關(guān)閉數(shù)據(jù)庫關(guān)閉數(shù)據(jù)庫連接 連接存取用戶最新催示用尸信圖6- 2用戶管理流程圖6.2.2關(guān)鍵類說明User教師實(shí)體類,即JavaBean囊括了讀者的屬性和get、setter方法;UserDAO DAO1處理數(shù)據(jù)實(shí)現(xiàn)接口類,定義了讀者業(yè)務(wù)操作的方法;UserService service層讀者相關(guān)業(yè)務(wù)白方法類, 包括 public boolean save(String u
37、sername, Stringpasswor法進(jìn)行注冊和添加用戶操作,public boolean delete(int userIdjT法完成用戶的刪除以完成用戶的注銷, public boolean update(int userId, String username, String password 完成用戶信息的更新,通過public User findById(int user助法可以根據(jù)用戶Id查看用戶信息, 通過public User巾ndByName(String name可以根據(jù)用戶名進(jìn)行查詢用戶信息,通過 public ArrayList<User>巾ndAll
38、例出數(shù)據(jù)庫中所有讀者的信息;AddUser負(fù)責(zé)用戶添加并跳轉(zhuǎn)的 Servlet類,在I類的doGet(方法中調(diào)用UserServic類中的 save(方法,將用戶提交的數(shù)據(jù)通過處理提交到數(shù)據(jù)庫中完成用戶的添加,并根據(jù)save()勺返回值跳轉(zhuǎn)到相應(yīng)的頁面。UpdateUse偵責(zé)用戶信息的更新并跳轉(zhuǎn)的Servlet類,在該類的doGet(方法中調(diào)用UserService類中的update(方法,將用戶提交的數(shù)據(jù)通過處理提交到數(shù)據(jù)庫中完成用戶的更新,并根據(jù)update勺返回值跳轉(zhuǎn)到相應(yīng)的頁面。DeleteUser負(fù)責(zé)用戶的注銷并跳轉(zhuǎn)的 Servlet,在I類的doGet()J法中調(diào)用UserServ
39、ic類中的delete(方法,將用戶提交的數(shù)據(jù)通過處理提交到數(shù)據(jù)庫中完成讀者的注銷,并根據(jù)delete(用返回值來確定是否刪除成功并跳轉(zhuǎn)到相應(yīng)的頁面;注:其他模塊設(shè)計(jì)思路與上述思路和方法相似,不予說明。第七章編碼7.1 部分核心代碼7.1.1 用JDBC4接JAVA web:程與數(shù)據(jù)庫1)連接數(shù)據(jù)庫public static Connection getConnection() throws ExceptionProperties pro=new Properties。;InputStream inStream = UserUtils.class.getResourceAsStream(&qu
40、ot;/perties");pro.load(inStream);Class.forName(pro.getProperty("driverClassName");Connection con = DriverManager.getConnection(pro.getProperty("url"), pro.getProperty("username"), pro.getProperty("password");return con;2)連接數(shù)據(jù)庫實(shí)現(xiàn)數(shù)據(jù)層的增刪改查/*增刪改查 crud
41、* author Administrator* DOM4J單析 xml* 導(dǎo)包* jdbc數(shù)據(jù)從程序存入數(shù)據(jù)庫 或者數(shù)據(jù)庫讀取到程序*/public class UserDAO public void addUser(User u) throws ExceptionConnection con = UserUtils.getConnection();String sql="insert into user (username,password,sex)values(?,?,?)”;PreparedStatement p = con.prepareStatement(sql);p.se
42、tString(1, u.getUsername();p.setString(2, u.getPassword();p.setString(3, u.getSex();p.executeUpdate();p.close();con.close();/刪除用戶public void deleteUser(User u) throws ExceptionConnection con = UserUtils.getConnection();String sql="delete from user where username=?"PreparedStatement p = con
43、.prepareStatement(sql);p.setString(1, u.getUsername();p.executeUpdate();p.close();con.close();/修改屬性public void alterUser(User oldu,User newu) throws ExceptionConnection con = UserUtils.getConnection();String sql="update user set username=? password=?,sex=? where username=?"PreparedStatemen
44、t p = con.prepareStatement(sql);p.setString(1, newu.getUsername();p.setString(2, newu.getPassword();p.setString(3, newu.getSex();p.setString(4, oldu.getUsername();p.executeUpdate();p.close();con.close();/查找通過用戶名查找public User findByUsername(String username) throws ExceptionConnection con = UserUtils.
45、getConnection();String sql="select * from user where username=?"PreparedStatement p = con.prepareStatement(sql);p.setString(1,username);ResultSet rs = p.executeQuery();User u=null;if(rs.next()u=new User(rs.getString("username"), rs.getString("password"), rs.getString(&q
46、uot;sex");rs.close();p.close();con.close();return u;/通過性別查找多個(gè)用戶public List<User> findBySex(String sex) throws ExceptionConnection con = UserUtils.getConnection();String sql="select * from user where sex=?"PreparedStatement p = con.prepareStatement(sql);p.setString(1,sex);ResultS
47、et rs = p.executeQuery();List<User> uList=new ArrayList<User>();while(rs.next()uList.add(new User(rs.getString("username"), rs.getString("password"), rs.getString("sex");rs.close();p.close();con.close();return uList;/查找全部用戶public List<User> findALL() t
48、hrows ExceptionConnection con = UserUtils.getConnection();String sql="select * from user "PreparedStatement p = con.prepareStatement(sql);ResultSet rs = p.executeQuery();List<User> uList=new ArrayList<User>();while(rs.next()uList.add(new User(rs.getString("username"),
49、 rs.getString("password"), rs.getString("sex");rs.close();p.close();con.close();return uList;7.1.2登陸注冊1淮陸的靜態(tài)頁面實(shí)現(xiàn)代碼<% page language="java" import="java.util.*" pageEncoding="UTF-8"%><% taglib prefix="c" uri=" %><!DOCTYPE
50、HTML PUBLIC "-/W3C/DTD HTML 4.01 Transitional/EN"><html><script type="text/javascript">/點(diǎn)擊該按鈕改變圖片驗(yàn)證碼的值function change()/通過id獲取圖片的節(jié)點(diǎn)var node=document.getElementById("imgid");/通過節(jié)點(diǎn)拿srcnode.src="<c:url value='/image'></c:url>"+&
51、quot;?"+new Date().getTime();/注冊按鈕function add() /點(diǎn)擊注冊跳轉(zhuǎn)到reg.jspM面location.href="<c:url value='/jsp/user/reg.jsp' />"/普通用戶登陸function userlogin() /點(diǎn)擊注冊跳轉(zhuǎn)到reg.jspM面location.href="<c:url value='/userlogin.jsp' />"</script><head><title&
52、gt;太原科技大學(xué)</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><style type="text/css">.error text-align: cente
53、r;color: red;font-weight: 900;font-size: 12px;</style></head><body><h1 align="center"><img alt="" src="images/xiaohui.jpg"></h1><h1 align="center"> 學(xué)籍信息 </h1><br><br><hr style="height: 20px;"><p class="error">$requestScope.errMsg </p><p class="error"> </p><form action="<c:url value='/LoginServler'/>" method="post">
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國石油大學(xué)(北京)《籃球》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州升達(dá)經(jīng)貿(mào)管理學(xué)院《園林景觀快題設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)新課程標(biāo)準(zhǔn)培訓(xùn)方案
- 長春工業(yè)大學(xué)《葡萄酒品嘗學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 生態(tài)恢復(fù)技術(shù)在退化土地上應(yīng)用
- 餐飲業(yè)年度報(bào)告模板
- AI生活助手新品發(fā)布模板
- 碩士論文答辯報(bào)告
- 生醫(yī)年報(bào)展望模板
- 房地產(chǎn)交易制度政策-《房地產(chǎn)基本制度與政策》全真模擬試卷4
- 《史記》上冊注音版
- 健康管理師操作技能考試題庫(含答案)
- 2018年湖北省武漢市中考數(shù)學(xué)試卷含解析
- 農(nóng)化分析土壤P分析
- GB/T 18476-2001流體輸送用聚烯烴管材耐裂紋擴(kuò)展的測定切口管材裂紋慢速增長的試驗(yàn)方法(切口試驗(yàn))
- GA 1551.5-2019石油石化系統(tǒng)治安反恐防范要求第5部分:運(yùn)輸企業(yè)
- 拘留所教育課件02
- 沖壓生產(chǎn)的品質(zhì)保障
- 2023年湖南聯(lián)通校園招聘筆試題庫及答案解析
- 上海市徐匯區(qū)、金山區(qū)、松江區(qū)2023屆高一上數(shù)學(xué)期末統(tǒng)考試題含解析
- 護(hù)士事業(yè)單位工作人員年度考核登記表
評論
0/150
提交評論