版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于JSP的學(xué)生信息管理系統(tǒng)</p><p><b> 摘 要 </b></p><p> 隨著學(xué)校規(guī)模的不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息也成倍增長(zhǎng)。面對(duì)如此龐大的信息量,開發(fā)學(xué)生信息管理系統(tǒng)來(lái)提高學(xué)生管理工作的效率就成為必然。通過(guò)該系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,從而減少管理方面的工作量。</p>
2、<p> 本文主要介紹了學(xué)生信息管理系統(tǒng)的主要任務(wù),闡述了開發(fā)該系統(tǒng)用到的關(guān)鍵技術(shù),如采用B/S結(jié)構(gòu),使用JSP編程、利用SQLServer2000建立數(shù)據(jù)庫(kù)、采用HTML,JavaScript等編程技術(shù)。</p><p> 本系統(tǒng)是采用B/S模式進(jìn)行開發(fā)的,系統(tǒng)的用戶權(quán)限有兩種:學(xué)生和系統(tǒng)管理員,不同權(quán)限用戶登入到不同的操作界面。該系統(tǒng)主要由學(xué)籍維護(hù)、選課管理、成績(jī)查詢等功能模塊組成,本文具體
3、介紹了各功能模塊所包含的小模塊的功能,學(xué)籍維護(hù)模塊主要是對(duì)學(xué)生的基本信息進(jìn)行添加、查詢、修改、刪除;選課管理模塊主要是對(duì)選修的課程進(jìn)行添加、刪除、統(tǒng)計(jì)選修人數(shù),以及學(xué)生進(jìn)行選課和更改選課;成績(jī)查詢模塊主要是對(duì)必修課進(jìn)行添加、刪除、錄入成績(jī),以及學(xué)生進(jìn)行查詢成績(jī)等功能。</p><p> 關(guān)鍵字:學(xué)生信息管理,B/S,JSP,Script,SQLServer2000。</p><p>
4、Based on JSP student information management system </p><p><b> Abstract </b></p><p> Along with the school scale unceasing expansion, the student quantity sharp growth
5、, concerned student's each kind of information also becomes doubles the growth. Facing the so huge information content develops the student information management system to enhance the student supervisory work the ef
6、ficiency to become inevitably. Through this system, may achieve the information the standard management, the science statistics and the fast inquiry, thus reduced management aspect work load.</p><p> This a
7、rticle mainly introduced the student information management system primary mission, elaborated develops essential technology which this system uses, like uses the B/S structure, uses the JSP programming, using the SQLSer
8、ver2000 establishment database, uses HTML and JavaScript, and so on programming technology.</p><p> This system uses the B/S pattern to carry on the development; the system user jurisdiction has two kinds:
9、The student and the system manager, the different jurisdiction user records to the different operation contact surface. This system mainly by the school register maintenance, chooses function module and so on class manag
10、ement, result inquiry to be composed, this article specifically introduced various functions module contains the small module function, the school register maintenance module</p><p><b> 目 錄</b>&
11、lt;/p><p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 引 言1</b></p><p><b> 第一章 緒論2</b></p><p> 1.1 選題的背景和意義2</
12、p><p> 1.2 國(guó)內(nèi)外研究現(xiàn)狀及發(fā)展趨勢(shì)2</p><p> 1.3 本課題研究?jī)?nèi)容2</p><p> 1.4 本課題研究的目標(biāo)及主要特色3</p><p> 第二章 系統(tǒng)設(shè)計(jì)使用技術(shù)介紹4</p><p> 2.1 JSP(Java Server Pages)和Java Bean技術(shù)介紹4&
13、lt;/p><p> 2.1.1 JSP概述4</p><p> 2.1.2 JSP工作原理4</p><p> 2.1.3 JavaBean技術(shù)介紹4</p><p> 2.2 B/S體系結(jié)構(gòu)介紹5</p><p> 2.3 JavaScrit技術(shù)介紹6</p><p>
14、2.4 SQL Server 2000 數(shù)據(jù)庫(kù)6</p><p> 2.4.1 數(shù)據(jù)庫(kù)介紹6</p><p> 2.4.2 ODBC數(shù)據(jù)訪問(wèn)接口7</p><p> 2.4.3 JDBC數(shù)據(jù)訪問(wèn)接口7</p><p> 第三章 系統(tǒng)設(shè)計(jì)9</p><p> 3.1 需求分析9</p>
15、<p> 3.1.1 運(yùn)行環(huán)境9</p><p> 3.2 系統(tǒng)總體設(shè)計(jì)9</p><p> 3.2.1 系統(tǒng)目標(biāo)設(shè)計(jì)9</p><p> 3.2.2 系統(tǒng)設(shè)計(jì)思想9</p><p> 3.2.3 系統(tǒng)功能描述10</p><p> 3.2.4 系統(tǒng)用例圖12</p>
16、<p> 3.2.5 系統(tǒng)UML活動(dòng)圖13</p><p> 第四章 數(shù)據(jù)庫(kù)設(shè)計(jì)14</p><p> 4.1 總體表設(shè)計(jì)14</p><p> 4.2 數(shù)據(jù)庫(kù)表的結(jié)構(gòu)14</p><p> 4.3 實(shí)體及ER圖16</p><p> 4.3.1 實(shí)體介紹16</p>
17、<p> 4.3.2 實(shí)體的ER圖以及各實(shí)體之間聯(lián)系的ER圖16</p><p> 4.4 數(shù)據(jù)庫(kù)表的關(guān)系圖19</p><p> 4.5 數(shù)據(jù)庫(kù)表的視圖20</p><p> 4.6 數(shù)據(jù)庫(kù)連接20</p><p> 第五章 系統(tǒng)具體實(shí)現(xiàn)23</p><p> 5.1 登入界面2
18、3</p><p> 5.2 學(xué)生界面25</p><p> 5.3 學(xué)生界面功能實(shí)現(xiàn)26</p><p> 5.3.1 查看公告頁(yè)面26</p><p> 5.3.2 學(xué)生修改密碼頁(yè)面26</p><p> 5.3.3 學(xué)生學(xué)籍維護(hù)頁(yè)面28</p><p> 5.3.4
19、成績(jī)查詢30</p><p> 5.3.5 查看學(xué)修課表并進(jìn)行選修30</p><p> 5.4 管理員界面32</p><p> 5.5 管理員界面功能實(shí)現(xiàn)33</p><p> 5.5.1 查看學(xué)生基本信息33</p><p> 5.5.2 添加新學(xué)生和選修課35</p><
20、;p> 5.5.3 查看學(xué)修課表和必修課表36</p><p> 5.5.4 查看學(xué)生選課情況和學(xué)生成績(jī)37</p><p> 5.5.5 添加必修課表和學(xué)生成績(jī)40</p><p> 第六章 全文總結(jié)44</p><p><b> 致 謝45</b></p><p>
21、<b> 參考文獻(xiàn)46</b></p><p><b> 引 言</b></p><p> 學(xué)生信息管理系統(tǒng)(SMIS)是大學(xué)信息管理系統(tǒng)建設(shè)的重要組成部分,是提高教學(xué)管理的質(zhì)量和效益乃至建設(shè)知名高水平大學(xué)的關(guān)鍵環(huán)節(jié)。學(xué)生信息處理的電腦化、網(wǎng)絡(luò)化,也是實(shí)現(xiàn)學(xué)校管理現(xiàn)代化和信息化的重要內(nèi)容。</p><p> 學(xué)生
22、信息管理系統(tǒng)的內(nèi)容對(duì)于學(xué)校的決策者和管理者來(lái)說(shuō)都至關(guān)重要, 所以學(xué)生信息管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠?lái)人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的
23、各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。</p><p> 作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生信息進(jìn)行管理,具有手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率,也是進(jìn)行科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。</p><p> 隨著進(jìn)入二十一世紀(jì),計(jì)算機(jī)技術(shù)迅速向著網(wǎng)絡(luò)化、集成化方向發(fā)展。傳
24、統(tǒng)的單機(jī)版應(yīng)用軟件正在逐漸退出舞臺(tái),取而代之的是支持網(wǎng)絡(luò)、支持多種數(shù)據(jù)信息(多媒體)的新一代網(wǎng)絡(luò)版應(yīng)用軟件,而目前網(wǎng)絡(luò)版軟件中似乎存在著兩種不同的趨勢(shì),一種是稱為客戶端——服務(wù)器的C/S結(jié)構(gòu)應(yīng)用系統(tǒng),另一種是稱為瀏覽器——服務(wù)器的B/S結(jié)構(gòu)應(yīng)用系統(tǒng)。而后者的特點(diǎn)是在客戶端直接采用了功能強(qiáng)大的瀏覽器軟件作為界面,其優(yōu)點(diǎn)在于軟件開發(fā)效率高,客戶端不受操作平臺(tái)的限制、也不受地域的限制,網(wǎng)絡(luò)傳輸量少,即適用于局域網(wǎng),更適用于Internet,而
25、且投資小、見效快,用戶可以不必進(jìn)行服務(wù)器方面的投資,而是去租用,甚至是免費(fèi)使用ISP的服務(wù)器資源,因而受到越來(lái)越多中小型單位的青睞。</p><p> 因此,開發(fā)一套采用B/S結(jié)構(gòu)的學(xué)生信息管理系統(tǒng)就成為必要的事情。本系統(tǒng)正是采用B/S結(jié)構(gòu)開發(fā)的,該系統(tǒng)主要由學(xué)籍維護(hù)、選課管理、成績(jī)查詢等功能模塊組成,實(shí)現(xiàn)學(xué)生基本信息管理、學(xué)生選修課程管理以及學(xué)生成績(jī)查詢管理等。本文將在后面一一加以詳細(xì)闡述。</p>
26、;<p><b> 第一章 緒論</b></p><p> 1.1 選題的背景和意義</p><p> 隨著我國(guó)教育產(chǎn)業(yè)化的飛速發(fā)展,社會(huì)對(duì)教育水平和教學(xué)管理軟硬件的要求日益提高,尤其是對(duì)一個(gè)學(xué)校能夠具有一整套完善的教學(xué)管理軟件提出了更多的要求。為了適應(yīng)這種形式,教育系統(tǒng)尤其是大學(xué)不僅首先要有堅(jiān)實(shí)的硬件基礎(chǔ),還要有一整套完善的教學(xué)管理軟件管理系統(tǒng)
27、。而要實(shí)現(xiàn)這一功能,就要求學(xué)校管理者配備一套高效的教育管理網(wǎng)絡(luò)系統(tǒng),以便在學(xué)校內(nèi)實(shí)施良好的一整套完善的管理且以最快地速度響應(yīng)教師和學(xué)生的需求,及時(shí)為他們提供服務(wù),為他們提供一個(gè)高效、便捷的環(huán)境。學(xué)生信息管理系統(tǒng)是校園網(wǎng)絡(luò)中一個(gè)重要的應(yīng)用系統(tǒng),它大大改善了學(xué)校教學(xué)、科研與管理的基礎(chǔ)環(huán)境,在一定程度上反映出學(xué)校管理現(xiàn)代化的水平。</p><p> 隨著國(guó)家對(duì)于教育的重視逐漸加大,學(xué)校正向著大型化、規(guī)模化發(fā)展,而對(duì)于
28、大中型學(xué)校,跟學(xué)生信息管理有關(guān)的信息隨之急劇增加。在這種情況下單靠人工來(lái)處理員工的工資不但顯得力不從心,而且極容易出錯(cuò)。該系統(tǒng)就是設(shè)計(jì)一個(gè)學(xué)生信息數(shù)據(jù)庫(kù)管理系統(tǒng),由計(jì)算機(jī)代替人工執(zhí)行一系列諸如增加新學(xué)生,刪除舊學(xué)生,學(xué)生信息修改,查詢,維護(hù)及打印等操作。這樣就使學(xué)生部門管理人員可以輕松快捷地完成學(xué)生信息管理的任務(wù)。</p><p> 1.2 國(guó)內(nèi)外研究現(xiàn)狀及發(fā)展趨勢(shì)</p><p>
29、管理信息系統(tǒng)(MIS)是進(jìn)行信息的采集、存儲(chǔ)、加工、維護(hù)和使用的系統(tǒng)。它是隨著管理科學(xué)和技術(shù)科學(xué)的發(fā)展而形成的。MIS的發(fā)展與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展是緊密相關(guān)的,隨著Internet/Intranet技術(shù)的廣泛應(yīng)用,MIS的體系結(jié)構(gòu)也發(fā)生很大的變化,從以往基于C/S結(jié)構(gòu)的數(shù)據(jù)訪問(wèn)及安全體系發(fā)展到當(dāng)前的基于B/S結(jié)構(gòu)體系。學(xué)生信息管理系統(tǒng)是典型的管理信息系統(tǒng)(MIS),其系統(tǒng)開發(fā)主要包括數(shù)據(jù)庫(kù)的規(guī)劃設(shè)計(jì)與維護(hù)和客戶端應(yīng)用程序的開發(fā)兩個(gè)方面。
30、對(duì)于前者要求建立起的數(shù)據(jù)庫(kù)具有完整性和一致性,且具有一定的數(shù)據(jù)安全性,而對(duì)于后者則要求程序界面友好、功能完備,容易使用,具有流行軟件的操作習(xí)慣等特點(diǎn)。</p><p> 隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息也成倍增長(zhǎng)。面對(duì)龐大的信息量,有必要開發(fā)學(xué)生信息管理系統(tǒng)來(lái)提高學(xué)生管理工作的效率。通過(guò)這樣的系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,從而減少管理方面的工作量。</p&g
31、t;<p> 鑒于上述管理信息系統(tǒng)的日趨成熟和收集信息的情況,該學(xué)生信息管理系統(tǒng)充分運(yùn)用MIS的總體思想,綜合應(yīng)用了B/S模式、SQL Server、JSP等技術(shù),并具有學(xué)生對(duì)自己所需信息的操作和管理員對(duì)系統(tǒng)進(jìn)行管理等功能,很好的將教學(xué)質(zhì)量提升了,真正完好地達(dá)到服務(wù)于教學(xué)計(jì)劃。</p><p> 1.3 本課題研究?jī)?nèi)容</p><p> 本課題研究?jī)?nèi)容為學(xué)生信息管理系統(tǒng)
32、,信息管理系統(tǒng)提供了強(qiáng)大的學(xué)生檔案管理管理功能,方便管理員對(duì)學(xué)生信息的添加、修改、刪除、查詢等操作。本系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)學(xué)生信息管理的系統(tǒng)化、規(guī)范化、自動(dòng)化、達(dá)到提高學(xué)生信息管理效率的目的。</p><p><b> 主要內(nèi)容包過(guò):</b></p><p> ?。?) 學(xué)籍維護(hù)模塊:</p><p> 1. 管理員可以對(duì)學(xué)生進(jìn)行添加(
33、包過(guò)基本信息)、刪除、查看、修改信息。</p><p> 2. 學(xué)生可以查看自己的基本信息,添加、修改詳細(xì)個(gè)人信息。</p><p> (2) 選課管理模塊:</p><p> 1. 管理員可以對(duì)選修課程進(jìn)行添加、刪除、統(tǒng)計(jì)每門課程選修的人數(shù)以及查找</p><p> 單個(gè)學(xué)生所選的課程。 </p><p>
34、 2. 學(xué)生可以查看所有選修課程并進(jìn)行選修以及查看自己所選課程并進(jìn)行修改。</p><p> ?。?) 成績(jī)管理模塊:</p><p> 1. 管理員可以進(jìn)行添加、刪除、修改基本課程,錄入、修改學(xué)生基本課程成績(jī),</p><p> 查找單個(gè)學(xué)生的所有成績(jī)以及查找單門基礎(chǔ)課程所有學(xué)生的成績(jī)。</p><p> 2. 學(xué)生可以查詢自己的基
35、礎(chǔ)課程成績(jī)。 </p><p> 學(xué)生信息管理系統(tǒng)主要提供方便高效的管理功能以及網(wǎng)上的信息查閱平臺(tái),學(xué)生可以通過(guò)該系統(tǒng)查閱相關(guān)信息、選課及修改相關(guān)信息,管理員可以管理所有信息。該系統(tǒng)使用JSP編程語(yǔ)言,Microsoft SQL2000數(shù)據(jù)庫(kù)以及Apache Tomcat作為開發(fā)平臺(tái),運(yùn)用軟件工程思想方法,對(duì)系統(tǒng)進(jìn)行快速有效開發(fā), 系統(tǒng)分為以下幾個(gè)方向:</p><p> ?。?)用
36、戶管理。實(shí)現(xiàn)對(duì)不同用戶分配不同的權(quán)限。</p><p> ?。?)數(shù)據(jù)庫(kù)連接。使程序能訪問(wèn)數(shù)據(jù)庫(kù),并能對(duì)其中的數(shù)據(jù)進(jìn)行操作。</p><p> (3)數(shù)據(jù)錄入。通過(guò)程序能實(shí)現(xiàn)往數(shù)據(jù)庫(kù)中增加記錄。</p><p> ?。?)數(shù)據(jù)查詢。通過(guò)各種查詢組合實(shí)現(xiàn)對(duì)數(shù)據(jù)的精確選取。</p><p> (5)數(shù)據(jù)維護(hù)。包括對(duì)數(shù)據(jù)的修改及刪除操作。<
37、;/p><p> 系統(tǒng)依據(jù)Apache Tomcat構(gòu)架的運(yùn)行平臺(tái),利用Dreamweaver 進(jìn)行整體框架的設(shè)計(jì),連接數(shù)據(jù)庫(kù),最后進(jìn)行全面的系統(tǒng)調(diào)試而完成。</p><p> 1.4 本課題研究的目標(biāo)及主要特色</p><p> 一、研究目標(biāo):建立一個(gè)B/S層結(jié)構(gòu)的學(xué)生信息管理系統(tǒng),實(shí)現(xiàn)管理員對(duì)學(xué)生信息的獲取、統(tǒng)計(jì)等各環(huán)節(jié)的計(jì)算機(jī)管理。</p>&
38、lt;p><b> 二、主要特點(diǎn):</b></p><p> 1、實(shí)現(xiàn)學(xué)生信息管理的基本要求,對(duì)學(xué)生學(xué)習(xí)進(jìn)行完善管理。</p><p> 2、界面友好,簡(jiǎn)單易用。</p><p> 3、系統(tǒng)操作簡(jiǎn)單,功能強(qiáng)大,易于維護(hù)。</p><p> 第二章 系統(tǒng)設(shè)計(jì)使用技術(shù)介紹</p><p&
39、gt; 2.1 JSP(Java Server Pages)和Java Bean技術(shù)介紹</p><p> 2.1.1 JSP概述</p><p> JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.html)中插入Java程
40、序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。</p><p> 2.1.2 JSP工作原理</p><p> JSP文件第一次被請(qǐng)求時(shí),JSP引擎把該JSP文件轉(zhuǎn)換成為一個(gè)servlet。而這個(gè)引擎本身也是一個(gè)servlet,在JSWDK(java服務(wù)器網(wǎng)絡(luò)開發(fā)包)中,它就是JspServlet。JSP引擎先把該JSP文件轉(zhuǎn)換成一個(gè)Java源文件
41、,在轉(zhuǎn)換時(shí)如果發(fā)現(xiàn)jsp文件有任何語(yǔ)法錯(cuò)誤,轉(zhuǎn)換過(guò)程將中斷,并向服務(wù)端和客戶端輸出出錯(cuò)信息;如果轉(zhuǎn)換成功, JSP引擎用javac把該Java源文件編譯成相應(yīng)的class文件。然后創(chuàng)建一個(gè)該SERVLET的實(shí)例,該SERVLET 中的jspInit()方法被執(zhí)行,jspInit()方法在servlet的生命周期中只被執(zhí)行一次。然后jspService()方法被調(diào)用來(lái)處理客戶端的請(qǐng)求。對(duì)每一個(gè)請(qǐng)求,JSP引擎創(chuàng)建一個(gè)新的線程來(lái)處理該請(qǐng)求。
42、如果有多個(gè)客戶端同時(shí)請(qǐng)求該JSP文件,則JSP引擎會(huì)創(chuàng)建多個(gè)線程。每個(gè)客戶端請(qǐng)求對(duì)應(yīng)一個(gè)線程。以多線程方式執(zhí)行可大大降低對(duì)系統(tǒng)的資源需求,提高系統(tǒng)的并發(fā)量及響應(yīng)時(shí)間.但應(yīng)該注意多線程的編程限制,由于該servlet始終駐于內(nèi)存,所以響應(yīng)是非??斓摹?如果.jsp文件被修改了,服務(wù)器將根據(jù)設(shè)置決定是否對(duì)該文件重新編譯,如果</p><p> 2.1.3 JavaBean技術(shù)介紹</p><p
43、> JavaBean是一種軟件組件模型,它與其他軟件對(duì)象相互作用,決定如何建立和重用軟件組件,這些可重用軟件組件被稱為Bean。Bean使用現(xiàn)有的Bean幫助開發(fā)新的計(jì)劃,進(jìn)而建立它們之間的關(guān)系。</p><p> JavaBean是基于Sun公司的JavaBean規(guī)范的,可在編程工具中被可視化處理的可復(fù)用的軟件組件。因此JavaBean具有4個(gè)基本特性:</p><p><
44、;b> 獨(dú)立性;</b></p><p><b> 可重用性;</b></p><p> 在可視化開發(fā)工具中使用</p><p> 用戶可以使用JavaBean將功能、處理、值、數(shù)據(jù)庫(kù)訪問(wèn)和其他任何可以用java代碼創(chuàng)造的對(duì)象進(jìn)行打包,并且其他的開發(fā)者可以通過(guò)內(nèi)部的JSP頁(yè)面、Servlet、其他JavaBean、ap
45、plet程序或者應(yīng)用來(lái)使用這些對(duì)象。這樣JavaBean就變成了一個(gè)組件了,達(dá)到代碼的重用性和隔離性,在調(diào)用JavaBean的時(shí)候,不用關(guān)心JavaBean的實(shí)現(xiàn)過(guò)程,只要知道方法的功能、輸入?yún)?shù)和輸出參數(shù)就可以了。</p><p> 2.2 B/S體系結(jié)構(gòu)介紹</p><p> 在B/S體系結(jié)構(gòu)系統(tǒng)中,用戶通過(guò)瀏覽器向分布在網(wǎng)絡(luò)上的許多服務(wù)器發(fā)出請(qǐng)求,服務(wù)器對(duì)瀏覽器的請(qǐng)求進(jìn)行處理,將
46、用戶所需信息返回到瀏覽器。B/S結(jié)構(gòu)簡(jiǎn)化了客戶機(jī)的工作,客戶機(jī)上只需配置少量的客戶端軟件。服務(wù)器將擔(dān)負(fù)更多的工作,對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)和應(yīng)用程序的執(zhí)行將在服務(wù)器上完成。瀏覽器發(fā)出請(qǐng)求,而其余如數(shù)據(jù)請(qǐng)求、加工、結(jié)果返回以及動(dòng)態(tài)網(wǎng)頁(yè)生成等工作全部由Web Server完成。實(shí)際上B/S體系結(jié)構(gòu)是把二層C/S結(jié)構(gòu)的事務(wù)處理邏輯模塊從客戶機(jī)的任務(wù)中分離出來(lái),由Web服務(wù)器單獨(dú)組成一層來(lái)負(fù)擔(dān)其任務(wù),這樣客戶機(jī)的壓力減輕了,把負(fù)荷分配給了Web服務(wù)器。這
47、種三層體系結(jié)構(gòu)如圖1所示。</p><p><b> 圖2..1</b></p><p> 采用該結(jié)構(gòu)軟件的優(yōu)勢(shì)在于:</p><p> (1)無(wú)須開發(fā)客戶端軟件,維護(hù)和升級(jí)方便;</p><p> (2)可跨平臺(tái)操作,任何一臺(tái)機(jī)器只要裝有WWW瀏覽器軟件,均可作為客戶機(jī)來(lái)訪問(wèn)系統(tǒng);</p><
48、;p> (3)具有良好的開放性和可擴(kuò)充性;</p><p> (4)可采用防火墻技術(shù)來(lái)保證系統(tǒng)的安全性,有效地適應(yīng)了當(dāng)前用戶對(duì)管理信息系統(tǒng)的新需求。</p><p> 這種三層結(jié)構(gòu)層與層之間相互獨(dú)立,任何一層的改變不影響其他層的功能。</p><p> 三層B/S結(jié)構(gòu)將應(yīng)用的三個(gè)部分明確的分開:表示部分、應(yīng)用邏輯部分、數(shù)據(jù)訪問(wèn)部分。這三個(gè)部分在邏輯上獨(dú)
49、立的分開,分別加以實(shí)現(xiàn),稱之為:客戶端、應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器。而在客戶端和應(yīng)用服務(wù)器之間加入一個(gè)WEB服務(wù)器,就形成了一種特殊的B/S結(jié)構(gòu):Browser/Server,只在客戶端安裝瀏覽器軟件即可??蛻舳耸褂肐nternet Explore時(shí),就可以讓Internet Explore變成為能夠處理數(shù)據(jù)的應(yīng)用系統(tǒng)。</p><p> 由于這種模式是提供一個(gè)跨平臺(tái)的、簡(jiǎn)單一致的應(yīng)用環(huán)境,實(shí)現(xiàn)了開發(fā)系統(tǒng)與應(yīng)用系
50、統(tǒng)的分離,因此避免了為多重不同的操作系統(tǒng)開發(fā)同一應(yīng)用系統(tǒng)的重復(fù)操作,便于用戶群的擴(kuò)展、變化以及應(yīng)用系統(tǒng)的管理。</p><p> 因此該結(jié)構(gòu)在管理信息系統(tǒng)開發(fā)領(lǐng)域中獲得飛速發(fā)展,成為應(yīng)用軟件開發(fā)中一種流行的體系結(jié)構(gòu).所以在開發(fā)本系統(tǒng)時(shí)采用這種模式。</p><p> 2.3 JavaScrit技術(shù)介紹</p><p> JavaScript是一種基于對(duì)象(ob
51、ject)和事件驅(qū)動(dòng)(event driven)并具有安全性能的腳本語(yǔ)言。它的目的是與html超文本標(biāo)記語(yǔ)言、java 腳本語(yǔ)言(java小程序)一起實(shí)現(xiàn)在一個(gè)web頁(yè)面中鏈接多個(gè)對(duì)象,與web客戶交互作用。它被嵌入 HTML 的文件之中。通過(guò) JavaScript 可以做到響應(yīng)用戶的需求事件(如表單的輸入),這樣當(dāng)一位使用者輸入一項(xiàng)信息時(shí),它不需要通過(guò)網(wǎng)絡(luò)傳送到服務(wù)器端進(jìn)行處理再傳回來(lái)的過(guò)程,而可以直接在客戶端進(jìn)行事件的處理。它的出現(xiàn)
52、彌補(bǔ)了html語(yǔ)言的缺陷。</p><p> JavaScript是一種腳本語(yǔ)言,它采用小程序段的方式實(shí)現(xiàn)編程。像其它腳本語(yǔ)言一樣,JavaScript同樣已是一種解釋性語(yǔ)言,它提供了一個(gè)易的開發(fā)過(guò)程。 它的基本結(jié)構(gòu)形式與C、C++、VB、Delphi十分類似。但它不像這些語(yǔ)言一樣,需要先編譯,而是在程序運(yùn)行過(guò)程中被逐行地解釋。它與HTML標(biāo)識(shí)結(jié)合在一起,從而方便用戶的使用操作。</p><
53、;p> 2.4 SQL Server 2000 數(shù)據(jù)庫(kù)</p><p> 2.4.1 數(shù)據(jù)庫(kù)介紹</p><p> SQL Server 2000具有較好的可伸縮性和可靠性,提供了以Web標(biāo)準(zhǔn)為基礎(chǔ)的擴(kuò)展數(shù)據(jù)庫(kù)編程功能,可以滿足電子商務(wù)和企業(yè)應(yīng)用程序的要求。SQL Server 2000支持XML和Internet標(biāo)準(zhǔn),具有基于Web的分析能力,允許使用內(nèi)置的存儲(chǔ)過(guò)程以XML格
54、式存儲(chǔ)、更新、刪除、檢索數(shù)據(jù)。</p><p> SQL Server 2000能提供超大型系統(tǒng)所需的數(shù)據(jù)庫(kù)服務(wù)。大型服務(wù)器可能有成千上萬(wàn)的用戶同時(shí)連接到SQL Server 2000的情況,SQL Server 2000為這些環(huán)境提供了全面的保護(hù),具有防止問(wèn)題發(fā)生的安全措施,例如,可以防止多個(gè)用戶試圖同時(shí)更新相同的數(shù)據(jù)。SQL Server 2000還在多個(gè)用戶之間有效地分配可用資源,比如內(nèi)存、網(wǎng)絡(luò)帶寬和磁盤
55、I/O等。</p><p> SQL Server 2000不僅能作為一個(gè)功能強(qiáng)大的數(shù)據(jù)庫(kù)服務(wù)器有效地工作,而且數(shù)據(jù)庫(kù)引擎也用在需要在客戶端本地存儲(chǔ)獨(dú)立數(shù)據(jù)庫(kù)的應(yīng)用程序中。SQL Server 2000可以動(dòng)態(tài)地將自身配置成能有效地使用客戶端桌面或膝上型電腦中的可用資源,而不需要為每個(gè)客戶端專設(shè)一個(gè)數(shù)據(jù)庫(kù)管理員。應(yīng)用程序供應(yīng)商還可以將SQL Server 2000作為應(yīng)用程序的數(shù)據(jù)存儲(chǔ)組件嵌入到應(yīng)用程序中。SQ
56、L Server在網(wǎng)絡(luò)組件的頂部添加了服務(wù)器特有的中介組件,諸如開放式數(shù)據(jù)庫(kù)連接(ODBC)后能使不同客戶機(jī)進(jìn)行相互連接,它可處理基于Internet的應(yīng)用程序,幫助用戶把SQL Server數(shù)據(jù)庫(kù)信息集成到Web頁(yè)面。</p><p><b> SQL語(yǔ)句介紹:</b></p><p> SQL(Structured Query Language,結(jié)構(gòu)查詢語(yǔ)言)
57、是一個(gè)功能非常強(qiáng)大的數(shù)據(jù)庫(kù)語(yǔ)言,可以用在一些大型數(shù)據(jù)庫(kù)的建立。SQL語(yǔ)句通常用于完成一些數(shù)據(jù)庫(kù)的操作任務(wù),比如在數(shù)據(jù)庫(kù)中插入數(shù)據(jù)、更新數(shù)據(jù)、刪除數(shù)據(jù),或者從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù)。使用SQL的常見關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)有:Oracle、 Sybase、 DB2、My SQL 、 Microsoft SQL Server、 Access等。絕大多數(shù)SQL結(jié)構(gòu)化查詢語(yǔ)言都可以在數(shù)據(jù)庫(kù)之間通用,雖然不同的數(shù)據(jù)庫(kù)在SQL語(yǔ)言上有些差異。但是,標(biāo)準(zhǔn)的SQL
58、命令如"Select"、 "Insert"、 "Update"、 "Delete"、 "Create"和 "Drop"用于完成絕大多數(shù)數(shù)據(jù)庫(kù)的操作,在不同數(shù)據(jù)庫(kù)之間幾乎沒有差異。</p><p> SQL功能強(qiáng)大,但是概括起來(lái),它可以分成以下幾部分:DML(Data Manipulation
59、Language數(shù)據(jù)操作語(yǔ)言)用于檢索或者修改數(shù)據(jù); DDL(Data Definition Language數(shù)據(jù)定義語(yǔ)言) 用于定義數(shù)據(jù)的結(jié)構(gòu),如創(chuàng)建、修改、刪除等命令;DCL(Data Control Language數(shù)據(jù)控制語(yǔ)言)用于賦予或取消用戶的權(quán)限。</p><p> 2.4.2 ODBC數(shù)據(jù)訪問(wèn)接口</p><p> 開放數(shù)據(jù)庫(kù)互連(Open DataBase Conne
60、ctivity,ODBC)是Microsoft公司開發(fā)的一套開發(fā)數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用程序接口規(guī)范,它支持應(yīng)用程序以標(biāo)準(zhǔn)的ODBC函數(shù)和SQL語(yǔ)句操作各種不同的數(shù)據(jù)庫(kù)。在這一實(shí)現(xiàn)過(guò)程中,ODBC驅(qū)動(dòng)程序起了關(guān)鍵作用,簡(jiǎn)單地說(shuō),ODBC驅(qū)動(dòng)程序相當(dāng)于一個(gè)轉(zhuǎn)換開關(guān),它負(fù)責(zé)將應(yīng)用程序發(fā)送來(lái)的標(biāo)準(zhǔn)SQL語(yǔ)句傳遞給各種數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序處理,再將處理結(jié)構(gòu)送回使用程序。于是,應(yīng)用程序開發(fā)者只須面對(duì)統(tǒng)一的ODBC數(shù)據(jù)源,而不必針對(duì)各種數(shù)據(jù)庫(kù)進(jìn)行不同的設(shè)置,這樣的
61、程序具備更好的適用性和可移植性,甚至可以訪問(wèn)多種不同的數(shù)據(jù)庫(kù),如圖2所示</p><p> 圖2.2 ODBC工作原理</p><p> 2.4.3 JDBC數(shù)據(jù)訪問(wèn)接口</p><p> 為支持Java程序的數(shù)據(jù)庫(kù)操作功能,Java語(yǔ)言采用了專門的Java數(shù)據(jù)庫(kù)編程接口(Java DataBase Connecivity,JDBC),用于在Java程序中實(shí)現(xiàn)
62、數(shù)據(jù)庫(kù)操作功能并簡(jiǎn)化操作過(guò)程。JDBC支持基本SQL語(yǔ)句,提供多樣化的數(shù)據(jù)庫(kù)連接方式,為各種不同的數(shù)據(jù)庫(kù)提供統(tǒng)一的操作界面。</p><p> JDBC工作原理如圖3所示。</p><p> 圖2.3 JDBC工作原理</p><p><b> 第三章 系統(tǒng)設(shè)計(jì)</b></p><p><b> 3.
63、1 需求分析</b></p><p> 本系統(tǒng)主要是針對(duì)各個(gè)學(xué)校的學(xué)生信息進(jìn)行管理,本系統(tǒng)滿足以下幾點(diǎn)要求: </p><p> 系統(tǒng)安全性。由于該系統(tǒng)的使用對(duì)象多,要求有較好的權(quán)限管理。不同權(quán)限進(jìn)入不同的界面,為了防止數(shù)據(jù)的并發(fā)現(xiàn)象的出現(xiàn),數(shù)據(jù)的編輯必須由合法用戶來(lái)操作,并對(duì)每個(gè)學(xué)生的信息進(jìn)行良好的保密。</p><p> 系統(tǒng)內(nèi)容的全面性。學(xué)
64、生信息管理系統(tǒng)不僅是對(duì)學(xué)生的基本信息進(jìn)行管理,還包過(guò)學(xué)生選課管理,成績(jī)管理等,因此,本系統(tǒng)能夠很好的滿足學(xué)校對(duì)學(xué)生的信息進(jìn)行完善、統(tǒng)一的管理。</p><p> 系統(tǒng)靈活性。要求有良好的人機(jī)界面,操作簡(jiǎn)單(數(shù)據(jù)的添加、刪除、修改、查詢等方 便快捷)。</p><p> 可擴(kuò)展性。站點(diǎn)的數(shù)據(jù)承載量、功能模塊的單個(gè)或整體調(diào)整都可以滿足變化的需要,這種適應(yīng)性稱為可擴(kuò)展性。固定資產(chǎn)管理系統(tǒng)
65、的可擴(kuò)展性,體現(xiàn)在不同用戶群需要處理不同類型的數(shù)據(jù)、數(shù)據(jù)與用戶之間進(jìn)行交互、數(shù)據(jù)要符合個(gè)用戶的使用需求、多表查詢系統(tǒng)化、避免性能下降等方面。</p><p> 易維護(hù)性。本系統(tǒng)采用B/S結(jié)構(gòu),系統(tǒng)的升級(jí)只需要在服務(wù)器端完成,更新軟件系統(tǒng)的數(shù)據(jù)庫(kù)、文件也只需要更新服務(wù)器端即可。在進(jìn)行系統(tǒng)的維護(hù)時(shí),只需要遠(yuǎn)程登錄服務(wù)器系統(tǒng),減少了維護(hù)系統(tǒng)的成本和周期。</p><p> 3.1.1 運(yùn)行環(huán)
66、境</p><p> 操作系統(tǒng):Windows 2000 (Advanced) Server/2003 Server/XP Professional</p><p> 數(shù)據(jù)庫(kù):SQL Server 2000;</p><p> JSP服務(wù)器:Tomcat;</p><p> 開發(fā)工具:JBuilder X。</p>&l
67、t;p> 3.2 系統(tǒng)總體設(shè)計(jì)</p><p> 3.2.1 系統(tǒng)目標(biāo)設(shè)計(jì)</p><p> 系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)學(xué)校學(xué)生信息管理系統(tǒng)化、規(guī)范化和自動(dòng)化,從而達(dá)到學(xué)生信息管理高效率的目的。使得教務(wù)處人員能夠方便快捷地管理學(xué)生信息以及學(xué)生能夠方便快捷的查看修改個(gè)人信息,從而提高工作效率和經(jīng)濟(jì)效益。計(jì)算機(jī)的資源是受到限制的,因此要充分利用JSP的功能,設(shè)計(jì)出功能強(qiáng)大的軟件,同時(shí)
68、要盡可能減少對(duì)系統(tǒng)資源的占用,同時(shí)對(duì)本系統(tǒng)要求有良好的靈活性和完善性。</p><p> 3.2.2 系統(tǒng)設(shè)計(jì)思想</p><p> 學(xué)生信息管理系統(tǒng)主要是對(duì)學(xué)生的學(xué)籍,選課,成績(jī)等的管理。學(xué)生信息管理首先就應(yīng)該有學(xué)生,所以系統(tǒng)應(yīng)該有對(duì)學(xué)生的添加和刪除以及學(xué)生信息的修改;選課,固然要有課程讓學(xué)生選,就應(yīng)該有添加、刪除選修課程的功能,要讓學(xué)生選就應(yīng)該有學(xué)生查看、添加、修改選修課程;成績(jī)管
69、理就是學(xué)生能夠在網(wǎng)上平臺(tái)上快速查詢自己的分?jǐn)?shù),這個(gè)功能的實(shí)現(xiàn)首先應(yīng)該有添加、刪除基礎(chǔ)課程的功能,學(xué)生登入界面后能夠查詢功能。根據(jù)所需功能以及數(shù)據(jù)庫(kù)、JSP所能提供的功能來(lái)設(shè)計(jì)該系統(tǒng)。</p><p> 3.2.3 系統(tǒng)功能描述</p><p> 本系統(tǒng)功能主要包過(guò)三大塊:學(xué)籍維護(hù)(管理員添加、刪除學(xué)生基本信息;學(xué)生查看、修改個(gè)人附加信息);選課管理(添加、刪除選修課表,查看單個(gè)學(xué)生選課
70、情況以及單門課程被學(xué)生選修情況;學(xué)生查看、選修課程并可對(duì)所選課程進(jìn)行修改);成績(jī)查詢(管理員添加、刪除成績(jī)課表,添加學(xué)生分?jǐn)?shù)以及查詢單人或單課分?jǐn)?shù)情況;學(xué)生查看自己所學(xué)基礎(chǔ)課成績(jī))。 </p><p> 由于該系統(tǒng)權(quán)限有2個(gè),學(xué)生和管理員,故這兩個(gè)權(quán)限范圍內(nèi)的都應(yīng)該具有上述功能,即將上述三大功能模塊劃分給這2 個(gè)權(quán)限去具體實(shí)現(xiàn)。</p>
71、<p><b> 權(quán)限管理模塊圖 </b></p><p> 學(xué)生頁(yè)面應(yīng)具有的功能模塊如下: </p><p><b> 學(xué)生功能模塊</b></p><p> 修改密碼:學(xué)生進(jìn)入頁(yè)面后可以修改自己的密碼,以達(dá)到保密性;</p><p> 學(xué)
72、籍維護(hù):學(xué)生可以查看自己的基本信息(基本信息由管理員錄入不能修改),并填寫修改自己的學(xué)籍情況;</p><p> 選修課程:該功能主要是讓學(xué)生查看已有的選修課程并進(jìn)行選修,可以查看自己已選的課程如不滿意可以刪除重選,每個(gè)學(xué)生至多能選3門;</p><p> 查看成績(jī):學(xué)生可以查看自己的必修課成績(jī)。</p><p> 管理員頁(yè)面應(yīng)具有的功能,總括為:</p
73、><p><b> 管理員功能模塊</b></p><p> 學(xué)生管理:該模塊主要添加新學(xué)生基本信息;查看已有學(xué)生基本信息及可對(duì)其修改,刪除多余或出錯(cuò)學(xué)生信息。</p><p> 選課管理:可以添加新選修課程;查看已有選修課程并對(duì)起進(jìn)行刪除修改;查看學(xué)生選課情況,可以根據(jù)輸入學(xué)號(hào)查看個(gè)人選課情況,還可以輸入課程號(hào)查看該課被選情況;統(tǒng)計(jì)每門課程
74、選修的人數(shù)以便打印出給任課老師。</p><p> 成績(jī)管理:可以添加學(xué)生所學(xué)的基本課程并修改;添加學(xué)生成績(jī);查看學(xué)生成績(jī)(根據(jù)輸入學(xué)號(hào)和課程號(hào)來(lái)查看不同的成績(jī)情況);可以對(duì)學(xué)生成績(jī)進(jìn)行修改。</p><p> 下圖是學(xué)生信息管理系統(tǒng)的總功能模塊圖: </p><p> 圖3.1 系統(tǒng)功能圖</p><p> 3.
75、2.4 系統(tǒng)用例圖</p><p> 圖3.2 學(xué)生用例圖</p><p> 圖3.3 管理員用例圖</p><p> 3.2.5 系統(tǒng)UML活動(dòng)圖</p><p> 第四章 數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p> 在本系統(tǒng)中使用的是SQL Server2000數(shù)據(jù)庫(kù)管理系統(tǒng)。本系統(tǒng)使用的數(shù)據(jù)庫(kù)名為yuqi
76、ngpeng,下面具體講解數(shù)據(jù)庫(kù)中各數(shù)據(jù)表的創(chuàng)建和邏輯結(jié)構(gòu).</p><p><b> 4.1 總體表設(shè)計(jì)</b></p><p> 本系統(tǒng)中共用到了6個(gè)數(shù)據(jù)表,如下:</p><p> admin表:記錄管理員信息;</p><p> student表:記錄學(xué)生學(xué)籍信息;</p><p>
77、; kechengbiao表:記錄選修課信息;</p><p> chegnji表:記錄學(xué)生基礎(chǔ)課信息;</p><p> 成績(jī)關(guān)聯(lián)表:記錄學(xué)生基礎(chǔ)課成績(jī)信息;</p><p> 6. 選課關(guān)聯(lián)表:記錄學(xué)生選課信息。</p><p> 4.2 數(shù)據(jù)庫(kù)表的結(jié)構(gòu)</p><p><b> 表1:<
78、;/b></p><p> admin表的定義:</p><p><b> 表2:</b></p><p> Student表的定義:</p><p><b> 表3:</b></p><p> Chengji表的定義:</p><p>
79、;<b> 表4:</b></p><p> Kechengbiao表的定義:</p><p><b> 表5:</b></p><p><b> 成績(jī)關(guān)聯(lián)表的定義:</b></p><p><b> 表6:</b></p><
80、;p><b> 選課關(guān)聯(lián)的定義:</b></p><p> 4.3 實(shí)體及ER圖</p><p> 4.3.1 實(shí)體介紹</p><p> 本系統(tǒng)中的實(shí)體共有4 個(gè),分別為:</p><p> 實(shí)體1: 學(xué)生(姓名name,學(xué)號(hào)stu_id,密碼password,性別sex,專業(yè)zy,民族mz,政治面貌,
81、曾用名cym,身份證sfz,出身日期csrq,籍貫jg,健康狀況jkzk,入學(xué)年份rxnf,家庭地址jtdz,家庭電話jtdh,郵政編碼yzbm,聯(lián)系方式lxfs,Email email,備注bz); 關(guān)鍵字為:學(xué)號(hào)</p><p> 實(shí)體2:選修課(課程號(hào),課程名,任課教師,星期幾,時(shí)間,上課教室); 關(guān)鍵字為:課程號(hào)</p><p> 實(shí)體3:基礎(chǔ)課(學(xué)期號(hào),課程號(hào),課程名,學(xué)
82、分,主講教師) 關(guān)鍵字為:課程號(hào)</p><p> 實(shí)體4:成績(jī)(id,學(xué)號(hào),課程號(hào),成績(jī),重修成績(jī));</p><p> 4.3.2 實(shí)體的ER圖以及各實(shí)體之間聯(lián)系的ER圖</p><p><b> 實(shí)體1的ER圖:</b></p><p><b> 圖4.1 實(shí)體1</b></
83、p><p><b> 實(shí)體2的ER圖</b></p><p><b> 圖4.2 實(shí)體2</b></p><p><b> 實(shí)體3的ER圖</b></p><p><b> 圖4.3 實(shí)體3</b></p><p><b
84、> 實(shí)體4的ER圖:</b></p><p><b> 圖4.4 實(shí)體4</b></p><p> 實(shí)體1與實(shí)體2之間的聯(lián)系:選修(學(xué)號(hào),課程號(hào))</p><p> 圖4.5 實(shí)體1與實(shí)體2(m:n)關(guān)系</p><p> 實(shí)體1與實(shí)體3之間的關(guān)系:學(xué)習(xí)(學(xué)號(hào),課程號(hào),成績(jī))</p&
85、gt;<p> 圖4.6 實(shí)體1與實(shí)體3(m:n)關(guān)系</p><p> 4.4 數(shù)據(jù)庫(kù)表的關(guān)系圖</p><p> 在本系統(tǒng)中共有6個(gè)表,其中有些表之間存在著聯(lián)系,并建立起了關(guān)系:</p><p> 4.5 數(shù)據(jù)庫(kù)表的視圖</p><p><b> 4.6 數(shù)據(jù)庫(kù)連接</b></p>
86、<p> JDBC是Java數(shù)據(jù)庫(kù)連接(Java Data Base Connectivity)技術(shù)的簡(jiǎn)稱,是為各種常用</p><p> 的數(shù)據(jù)庫(kù)提供無(wú)縫連接的技術(shù)。JDBC定義了Java語(yǔ)言同各種SQL數(shù)據(jù)之間的應(yīng)用程序設(shè)計(jì)</p><p> 接口(API),提高了軟件的通用性。</p><p> JDBC的關(guān)鍵技術(shù)是數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序,針
87、對(duì)這點(diǎn)大量的數(shù)據(jù)庫(kù)廠商和第三方開發(fā)商</p><p> 支持Java的JDBC的標(biāo)準(zhǔn),并開發(fā)了不同的數(shù)據(jù)庫(kù)JDBC驅(qū)動(dòng)程序。這些驅(qū)動(dòng)程序可以分成四種:JDBC-ODBC Bridge驅(qū)動(dòng)程序、JDBC Native Bridge驅(qū)動(dòng)程序、JDBC-Network Bridge驅(qū)動(dòng)程序、Pure Java JDBC Driver。</p><p> 本系統(tǒng)正是利用JDBC-ODBC Br
88、idge驅(qū)動(dòng)程序來(lái)連接數(shù)據(jù)庫(kù)的,連接數(shù)據(jù)庫(kù)時(shí)用到了</p><p> JavaBean技術(shù),起代碼為:</p><p> package yu;</p><p> import java.io.*;</p><p> import java.sql.*;</p><p> public class dbcon
89、n {</p><p> String Sd="sun.jdbc.odbc.JdbcOdbcDriver"; //建立一個(gè)聯(lián)接機(jī)</p><p> String Sc="jdbc:odbc:yqp"; //建立一個(gè)Odbc源</p><p> Con
90、nection con=null; //Connection對(duì)象</p><p> ResultSet rs=null; //建立一個(gè)記錄集</p><p> PreparedStatement prepstmt = null;</p><p> String userName =
91、 "sa";</p><p> String password = "";</p><p> public dbconn(){</p><p><b> try{</b></p><p> Class.forName(Sd); //用classforname方法加載驅(qū)動(dòng)程序
92、類</p><p> }catch(java.lang.ClassNotFoundException e){ //當(dāng)沒有發(fā)現(xiàn)這個(gè)加載這個(gè)類的時(shí)候拋出的異常</p><p> System.err.println(e); //執(zhí)行系統(tǒng)的錯(cuò)誤打印</p><p><b> }</b></p><p><b
93、> }</b></p><p> public ResultSet executeQuery(String sql){ //可以執(zhí)行添加刪等操作</p><p> try{ con=DriverManager.getConnection(Sc,userName,password);</p><p> Statement st
94、mt = con.createStatement(</p><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_READ_ONLY);</p><p> rs=stmt.executeQuery(sql);</p><p> }catch(SQLExcepti
95、on er){</p><p> System.err.println(er.getMessage());</p><p><b> }</b></p><p> return rs;</p><p><b> }</b></p><p> public int e
96、xecuteUpdate(String sql){ //數(shù)據(jù)庫(kù)的更新操作</p><p> int result=0;</p><p> try{ con=DriverManager.getConnection(Sc,userName,password);</p><p> Statement stmt=con.createSta
97、tement();</p><p> result=stmt.executeUpdate(sql);</p><p> }catch(SQLException ex){</p><p> System.err.println(ex.getMessage());</p><p><b> }</b></p&g
98、t;<p> return result;</p><p><b> }</b></p><p> public void close(){</p><p> try{ if(con!=null)</p><p> con.close();</p><p>
99、; }catch(Exception e){</p><p> System.out.print(e);</p><p><b> }try{</b></p><p> if(rs!=null)</p><p> rs.close();</p><p> }catch(Exceptio
100、n e){</p><p> System.out.println(e);</p><p> } }</p><p> public PreparedStatement preparedstatements(String sql) {</p><p><b> try{</b></p>
101、;<p> con=DriverManager.getConnection(Sc,userName,password);</p><p> prepstmt = con.prepareStatement(sql);</p><p> }catch(SQLException ex){</p><p> System.err.println(ex.
102、getMessage());</p><p><b> }</b></p><p> return prepstmt; }</p><p><b> }</b></p><p> 在JSP程序中調(diào)用這個(gè)JavaBean時(shí)只需加一條語(yǔ)句:<jsp:useBean id=
103、"a" scope="page" </p><p> class="yu.dbconn"/> 就與數(shù)據(jù)庫(kù)連接上了,可以進(jìn)行數(shù)據(jù)調(diào)用、修改。</p><p> 第五章 系統(tǒng)具體實(shí)現(xiàn)</p><p> 按照上面所說(shuō)的學(xué)生信息管理系統(tǒng)應(yīng)具有的具體功能來(lái)具體實(shí)現(xiàn)該系統(tǒng),盡量完善系</p>
104、<p> 統(tǒng)的每一個(gè)要求,做到精益求精。</p><p><b> 5.1 登入界面</b></p><p> 由于系統(tǒng)設(shè)置了2個(gè)不同的權(quán)限,所以登入時(shí)首先應(yīng)該對(duì)權(quán)限進(jìn)行判斷,然后對(duì)所屬</p><p> 權(quán)限范圍內(nèi)的用戶進(jìn)行用戶名和密碼驗(yàn)證,驗(yàn)證成功才進(jìn)入相應(yīng)的頁(yè)面。</p><p><b&g
105、t; 登入系統(tǒng)界面如下:</b></p><p> 當(dāng)用戶輸入ID和密碼后會(huì)根據(jù)選擇的權(quán)限對(duì)ID和密碼進(jìn)行驗(yàn)證驗(yàn)證成功時(shí)進(jìn)入下一</p><p> 頁(yè)面,判斷用戶權(quán)限及密碼正確與否的代碼如下:</p><p> Login.jsp頁(yè)面代碼:</p><p> <%@ page contentType="t
106、ext/html; charset=GB2312" %></p><p> <%@ page import="java.sql.*" %></p><p> <%@ page language="java" %></p><p> <%@ page import="
107、java.util.*" %></p><p> <%@ page import="yu.*" %></p><p> <jsp:useBean id="a" scope="page" class="yu.dbconn"/></p><p>&
108、lt;b> <html></b></p><p><b> <head></b></p><p><b> <title></b></p><p><b> 身份驗(yàn)證</b></p><p><b> &
109、lt;/title></b></p><p><b> </head></b></p><p> <body bgcolor="#ffffff"></p><p> <% request.setCharacterEncoding("GBK");<
110、/p><p> if(sel.equals("student")){</p><p> sql = "SELECT * FROM student where stu_id='"+user+"' and password='"+pwd+"'";</p><p&g
111、t; URL="student.jsp";</p><p> ResultSet rs = stmt.executeQuery(sql);</p><p> if(rs.next()){</p><p> String a=rs.getString("name");</p><p> requ
112、est.getSession(true);</p><p> session.setAttribute("name",a);</p><p> session.setAttribute("id",user);</p><p> response.sendRedirect(URL) ;}</p><p&
113、gt;<b> else</b></p><p> response.sendRedirect("error.jsp") ;</p><p><b> }</b></p><p> else if(sel.equals("admin")){</p><p&
114、gt; sql = "SELECT * FROM admin where admin_id='"+user+"' and password='"+pwd+"'";</p><p> URL="admin.jsp";</p><p> ResultSet rs = stmt.
115、executeQuery(sql);</p><p> if(rs.next()){</p><p> request.getSession(true);</p><p> session.setAttribute("id",user);</p><p> response.sendRedirect(URL) ;}
116、</p><p><b> else</b></p><p> response.sendRedirect("error.jsp") ;</p><p> }//使用executeQuery執(zhí)行SQL查詢語(yǔ)句</p><p><b> %></b></p>
117、;<p><b> </body></b></p><p><b> </html></b></p><p><b> 5.2 學(xué)生界面 </b></p><p> 當(dāng)驗(yàn)證用戶名和密碼正確后進(jìn)入學(xué)生界面:</p><p> 學(xué)生主
118、頁(yè)面主要就是顯示學(xué)生的一些功能,在右邊設(shè)置了一個(gè)frame框來(lái)顯示學(xué)生選擇功能后進(jìn)入的頁(yè)面。</p><p> 5.3 學(xué)生界面功能實(shí)現(xiàn)</p><p> 在學(xué)生主頁(yè)面中有學(xué)生所需要的一些功能,如查看公告,修改自己的登入密碼,查看學(xué)籍并進(jìn)行修改,查看選修課表并進(jìn)行選修,查看已選課程并可修改。</p><p> 5.3.1 查看公告頁(yè)面</p>&
119、lt;p> 5.3.2 學(xué)生修改密碼頁(yè)面</p><p><b> 修改密碼代碼:</b></p><p> Change.Jsp頁(yè)面:</p><p> <body bgcolor="#ffffff"></p><p> <% request.setCharacte
溫馨提示
- 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ù)覽,若沒有圖紙預(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)---jsp學(xué)生信息管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---jsp銷售信息管理系統(tǒng)
- 基于-jsp企業(yè)員工信息管理系統(tǒng)畢業(yè)設(shè)計(jì)定稿
- 基于jsp企業(yè)員工信息管理系統(tǒng)畢業(yè)設(shè)計(jì)定稿
- -jsp-基于jsp的學(xué)生信息管理系統(tǒng)
- jsp銷售信息管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 基于jsp班級(jí)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- jsp學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)----學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 學(xué)生信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì) 學(xué)生信息管理系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論