基于jsp班級信息管理系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)設(shè)計_第1頁
已閱讀1頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  高校班級信息管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b>  摘 要</b></p><p>  班級信息管理管理系統(tǒng)對于一個教育單位不可缺少的部分,就它的內(nèi)容來說,對于學(xué)校的領(lǐng)導(dǎo)者和管理者都至關(guān)重要,所以一個班級信息管理系統(tǒng)就應(yīng)該能夠讓用戶得到充足的信息和查詢信息速度迅捷。但是之前的人們一直在使用傳統(tǒng)人工來管理文件檔案,這種管理方式存在著許多

2、缺點,如:效率低下、安全保密性不高,另外時間長了后,就會產(chǎn)生大量的數(shù)據(jù)和文件,這對于班級信息的查找、維護和更新都會帶來一些不必要的困難?,F(xiàn)如今隨著社會科學(xué)技術(shù)的不斷更新和提高,隨著計算機科學(xué)的日漸成熟,班級信息管理系統(tǒng)強大的功能已經(jīng)被廣大群眾深刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。本次畢業(yè)設(shè)計以MyEclipse和SQL Server數(shù)據(jù)庫為工具實現(xiàn)了一個基于B/S模式的班級信息管理系統(tǒng)。該系統(tǒng)具備登陸注冊、學(xué)校新

3、聞信息管理、學(xué)生信息添加、前臺信息顯示、學(xué)生信息管理等功能,能夠完成學(xué)生學(xué)業(yè)信息的管理,可以顯著提高工作效率,提高安全保密性。本文從系統(tǒng)可行性分析、系統(tǒng)需求分析、系統(tǒng)總體設(shè)計、系統(tǒng)的實現(xiàn)幾個方面闡述了該系統(tǒng)的設(shè)計與開發(fā)過程。</p><p>  關(guān)鍵詞:學(xué)生檔案管理; 管理信息系統(tǒng); 數(shù)據(jù)庫; JSP; Tomcat</p><p>  Class Information Manageme

4、nt System in Colleges and Universities</p><p>  Huang Shijing</p><p>  (College of Information Science and Engineering,Jishou University,Jishou,Hunan 416000)</p><p><b>  Abstr

5、act</b></p><p>  Class management system for information management an integral part of an educational unit, as far as the content of it, is critical to school leaders and managers, so a class informat

6、ion management system should be able to allow users to receive adequate information and speed of query information fast. But before people have been using traditional manual for managing file archives, which means there

7、are many drawbacks, such as inefficiency, safety, confidentiality is not high, and after a long,</p><p>  Key Words:Student Information Management; Information Management System; database; JSP; Tomcat</p&

8、gt;<p><b>  目 錄</b></p><p><b>  緒 論5</b></p><p>  第一章 系統(tǒng)技術(shù)分析6</p><p>  1.1 B/S模式及其優(yōu)勢6</p><p>  1.2 JSP技術(shù)6</p><p>  1

9、.2.1 JSP技術(shù)加速了動態(tài)Web頁面的開發(fā)6</p><p>  1.2.2 JSP技術(shù)的擴展性7</p><p>  1.3 數(shù)據(jù)庫技術(shù)8</p><p>  1.4 JDBC數(shù)據(jù)庫連接技術(shù)8</p><p>  1.5 使用JDBC-ODBC訪問SQLSERVER9</p><p>  第二章 系統(tǒng)概

10、述10</p><p>  2.1 系統(tǒng)設(shè)計思想10</p><p>  2.2 需求分析10</p><p>  2.2.1 系統(tǒng)必要性10</p><p>  2.2.2 角色識別10</p><p>  2.2.3 系統(tǒng)需求11</p><p>  2.3 系統(tǒng)功能圖11&l

11、t;/p><p>  2.4 系統(tǒng)用例圖12</p><p>  2.5 系統(tǒng)開發(fā)環(huán)境及工具12</p><p>  2.6 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計13</p><p>  第三章系統(tǒng)功能模塊實現(xiàn)16</p><p>  3.1 學(xué)生端16</p><p>  3.1.1 學(xué)生登錄16<

12、/p><p>  3.1.2 密碼修改19</p><p>  3.1.3 個人信息查詢19</p><p>  3.1.4 成績查詢19</p><p>  3.1.5 新聞瀏覽20</p><p>  3.1.6 個人鑒定21</p><p>  3.1.7 優(yōu)秀學(xué)生查詢21<

13、/p><p>  3.2 后臺管理端22</p><p>  3.2.1 管理后臺登錄22</p><p>  3.2.2 管理員管理23</p><p>  3.2.3 新聞發(fā)布管理26</p><p>  3.2.4 學(xué)生信息管理30</p><p>  3.2.5 學(xué)生成績管理33

14、</p><p><b>  參考文獻38</b></p><p><b>  緒 論</b></p><p>  在計算機技術(shù)與信息技術(shù)迅猛發(fā)展的今天,作為信息系統(tǒng)核心和基礎(chǔ)的數(shù)據(jù)庫技術(shù)得到了越來越廣泛的應(yīng)用。從小型單項事務(wù)處理系統(tǒng)到大型共享系統(tǒng),從一般商用事務(wù)處理到計算機輔助設(shè)計與制造(CAD/CAM)、計算機集

15、成制造系統(tǒng)(CIMS)、辦公信息系統(tǒng)(OIS)、地理信息系統(tǒng)(GIS)等等,越來越多的新的應(yīng)用領(lǐng)域采用數(shù)據(jù)庫存儲和處理他們的信息資源。正是由于計算機的應(yīng)用,才有可能使現(xiàn)代社會組織和企事業(yè)單位的信息處理能力適應(yīng)現(xiàn)代化管理的要求。</p><p>  管理信息系統(tǒng):管理信息系統(tǒng)是一個集信息技術(shù)、經(jīng)濟管理理論、統(tǒng)計學(xué)與運籌學(xué)、數(shù)據(jù)庫技術(shù)為一體的綜合性系統(tǒng),是一個資金技術(shù)密集型、勞動密集型、智力密集型的項目。我國擁有廣闊

16、的市場和豐富的人才資源,有幾十年的技術(shù)積累和經(jīng)驗積累,有一定的后發(fā)優(yōu)勢。 在管理信息系統(tǒng)的創(chuàng)新工作既不能自大,更不能驕傲。要抓住當(dāng)前網(wǎng)絡(luò)經(jīng)濟興起的有利時機,以實現(xiàn)我國信息技術(shù)和信息產(chǎn)業(yè)的跨越式發(fā)展,更好地發(fā)揮信息產(chǎn)業(yè)對國民經(jīng)濟增長的拉動作用。</p><p>  隨著學(xué)校規(guī)模的不斷擴大,學(xué)生數(shù)量的急劇增加,有關(guān)學(xué)生的各種信息資料也成倍增長。辦學(xué)者們所頭疼的問題,就是如何面對這龐大的信息量。只有利用計算機,利用班級

17、信息管理系統(tǒng)才能解決這一問題,才能提高學(xué)生管理的工作效率。通過這樣的系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計和快速的查詢,從而減少管理方面的工作量[1]。</p><p>  第一章 系統(tǒng)技術(shù)分析</p><p>  1.1 B/S模式及其優(yōu)勢</p><p>  伴隨著Internet的迅速發(fā)展,計算機技術(shù)正在由基于C/S模式的應(yīng)用系統(tǒng)轉(zhuǎn)變?yōu)榛贐/S模式的應(yīng)用系統(tǒng)

18、。由于C/S模式的客戶端程序在部署和維護時面臨著很多的問題,人們逐漸開始重視瀏覽器(Browser)/服務(wù)器(Server)結(jié)構(gòu)的系統(tǒng)B/S系統(tǒng)最核心的一點就是用通用的瀏覽器取代了原來的客戶端程序。B/S 模式只對C/S模式作了少許變動,但帶來巨大的的好處:因為客戶端統(tǒng)一為瀏覽器,因此,應(yīng)用程序在部署、升級、維護時,只需在服務(wù)器端配置就可以了,所有的配置工作都集中到了服務(wù)器,提高了系統(tǒng)的安全性,也給用戶帶來了方便[2]。</p&g

19、t;<p><b>  1.2 JSP技術(shù)</b></p><p>  JSP全稱是Java Server Pages,它是sun推出的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。在靜態(tài)頁面中加入Java程序片段或JSP標(biāo)記就構(gòu)成了JSP頁面。JSP技術(shù)為創(chuàng)建顯示動態(tài)生成內(nèi)容的Web頁面提供了一個簡捷而快速的方法。JSP技術(shù)的設(shè)計目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與

20、各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開發(fā)工具共同工作[3]。</p><p>  1.2.1 JSP技術(shù)加速了動態(tài)Web頁面的開發(fā)</p><p>  (1)將內(nèi)容的生成和顯示進行分離</p><p>  使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識來設(shè)計和格式化最終頁面。使用JSP標(biāo)識或者小腳本來生成頁面上的動態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的,

21、例如請求帳戶信息或者特定的一瓶酒的價格)。生成內(nèi)容的邏輯被封裝在標(biāo)識和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運行。如果核心邏輯被封裝在標(biāo)識和Beans中,那么其他人,如Web管理人員和頁面設(shè)計者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。在服務(wù)器端,JSP引擎解釋JSP標(biāo)識和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且將結(jié)果以HTML

22、(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性[4]。</p><p>  (2)強調(diào)可重用的組件</p><p>  絕大多數(shù)JSP頁面依賴于可重用的,跨平臺的組件(JavaBeans或者Enterprise JavaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或

23、者使得這些組件為更多的使用者或者客戶團體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。</p><p>  (3)采用標(biāo)識簡化頁面開發(fā)</p><p>  Web頁面開發(fā)人員不會都是熟悉腳本語言的編程人員。JavaServer Page技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識中進行動態(tài)內(nèi)容生成所需要的。標(biāo)準(zhǔn)

24、的JSP標(biāo)識能夠訪問和實例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時的功能。通過開發(fā)定制化標(biāo)識庫,JSP技術(shù)是可以擴展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來工作[5]。</p><p>  1.2.2 JSP技術(shù)的擴展性</p><

25、p>  JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴展到能夠支持企業(yè)級的分布式應(yīng)用。作為采用Java技術(shù)家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。</p><p>  由于JSP頁面的內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術(shù)的所有

26、好處,包括健壯的存儲管理和安全性。作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處運行”的特點。隨著越來越多的供應(yīng)商將JSP支持添加到他們的產(chǎn)品中,您可以使用自己所選擇的服務(wù)器和工具,更改工具或服務(wù)器并不影響當(dāng)前的應(yīng)用。當(dāng)與Java 2平臺,企業(yè)版(J2EE)和Enterprise JavaBean技術(shù)整合時,JSP頁面將提供企業(yè)級的擴展性和性能,這對于在虛擬企業(yè)中部署基于Web的應(yīng)用是必需的[6]。</p&g

27、t;<p><b>  1.3 數(shù)據(jù)庫技術(shù)</b></p><p>  信息技術(shù)是知識經(jīng)濟的重要支柱,而數(shù)據(jù)庫技術(shù)和網(wǎng)絡(luò)技術(shù)又是信息技術(shù)重要的核心技術(shù)。以Microsoft SQL Server 為代表的成熟數(shù)據(jù)庫技術(shù)的應(yīng)用越來越廣泛,超大容量的數(shù)據(jù)存儲,高效率的數(shù)據(jù)查詢技術(shù),方便易用的向?qū)Ш凸ぞ?、友好情切的用戶界面,促進了電子商務(wù)、信息技術(shù)和數(shù)據(jù)管理技術(shù)的發(fā)展。它具有可靠性、

28、可用性、可建立數(shù)據(jù)倉庫等特點,為廣的用戶提供了完整的數(shù)據(jù)庫解決方案[7]。</p><p>  數(shù)據(jù)庫是統(tǒng)一管理相關(guān)數(shù)據(jù)的結(jié)合,數(shù)據(jù)是指用符號記錄下來的、可識別的信息,信息則是關(guān)于現(xiàn)實世界事物存在方式或運動狀態(tài)的反應(yīng)。數(shù)據(jù)的描述有兩種形式,一種是物理描述,一種是邏輯描述。物理描述是指數(shù)據(jù)在存儲設(shè)備上的存儲方式,物理數(shù)據(jù)是實際存放在存儲設(shè)備上的數(shù)據(jù)。邏輯數(shù)據(jù)是指計算機程序員或用戶可以操作的數(shù)據(jù)形式,是抽象的概念。&

29、lt;/p><p>  數(shù)據(jù)庫管理系統(tǒng)(database management system )是位于擁護和操作系統(tǒng)之間的數(shù)據(jù)管理軟件,它為用戶或應(yīng)用程序提供訪問數(shù)據(jù)庫的方法,這些方法包括數(shù)據(jù)庫的建立、查詢、更新以及各種數(shù)據(jù)控制,DBMS總是基于某種數(shù)據(jù)模型,因此可以說DBMS是某種數(shù)據(jù)模型在其拴系上的體現(xiàn)。關(guān)系型DBMS基于關(guān)系模型,關(guān)系模型的主要特征是使用表格結(jié)構(gòu)表達實體集,用外健表達實體之間的聯(lián)系[8]。<

30、;/p><p>  SQL是英文Structured Query Language的縮寫,意思為結(jié)構(gòu)化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建立聯(lián)系,進行溝通。按照ANSI(美國國家標(biāo)準(zhǔn)協(xié)會)的規(guī)定,SQL被作為關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。SQL語句可以用來執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),如Oracle, Sybase, Micr

31、osoft SQL Server, Access等都采用了SQL語言標(biāo)準(zhǔn)[9]。</p><p>  1.4 JDBC數(shù)據(jù)庫連接技術(shù)</p><p>  JDBC是一種有用于執(zhí)行SQL語句的java api.他由一組用java編程語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的API。數(shù)據(jù)庫操作是程序應(yīng)用的重要技術(shù)之一。如何獲取數(shù)據(jù)、增加數(shù)據(jù)、刪除數(shù)據(jù),以及如何對數(shù)據(jù)

32、進行管理,是每個程序開發(fā)者必須面對的問題,所以數(shù)據(jù)庫技術(shù)是本系統(tǒng)的重點。JDBC向應(yīng)用程序開發(fā)者提供了獨立并與數(shù)據(jù)庫的統(tǒng)一的API。 JDBC中的DriverManage、Connection、Statement、 PreparedStatrment、 CalladleStatement、 ResultSet。DriverManager適用于管理JDBC驅(qū)動程序的接口。這個接口的主要用途是通過getConnection方法來獲取Con

33、nection對象引用。Connection對象是通過DriverManger.getConnection( )方法獲得的,表示驅(qū)動程序提供的與數(shù)據(jù)庫連接的對話。Statement是想數(shù)據(jù)庫提交SQL語句并返回相應(yīng)結(jié)果的工具,使用Statement方法時,語句可能返回或不返回ResultSet對象。如果提交的是查詢語句(</p><p>  1.5 使用JDBC-ODBC訪問SQLSERVER</p>

34、<p>  ODBC(OPEN DATABASE CONNECTIVITY,開放數(shù)據(jù)庫連接)是Microsoft公司開放服務(wù)結(jié)構(gòu)中有關(guān)數(shù)據(jù)庫的一個組成部分,他建立了一組規(guī)范,并提供了一組對數(shù)據(jù)庫訪問標(biāo)準(zhǔn)的API。一個基于ODBC的應(yīng)用程序?qū)?shù)據(jù)庫的操作不依賴于任何DBMS,也就是說不論是Access,SQLServer還是oracle,都可以使用ODBC API進行訪問。首先,創(chuàng)建SQLServer數(shù)據(jù)庫student

35、,并在數(shù)據(jù)庫中創(chuàng)建表,接下來配置一個ODBC數(shù)據(jù)源,操作步驟為:單擊“開始”按鈕-----“設(shè)置”----“控制面板”-----“管理工具”-------“數(shù)據(jù)源”。在該窗口中,選擇“用戶dns”選項卡,然后單擊“添加”按鈕,選擇驅(qū)動器類別為SQLServer[11]。</p><p><b>  第二章 系統(tǒng)概述</b></p><p>  2.1 系統(tǒng)設(shè)計思想&l

36、t;/p><p>  運用JSP技術(shù)和網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù),基于B/S模式開發(fā)一個班級信息管理系統(tǒng)。本信息管理系統(tǒng)可以說是一個綜合性的學(xué)校學(xué)生管理系統(tǒng),它集成了學(xué)生信息管理系統(tǒng)、學(xué)生成績管理系統(tǒng)、學(xué)生考勤管理系統(tǒng)、新聞管理系統(tǒng)等多種功能,因而具有較強的實用性和先進性[12]。</p><p><b>  2.2 需求分析</b></p><p>  2.

37、2.1 系統(tǒng)必要性</p><p>  開發(fā)班級信息管理系統(tǒng)主要是為學(xué)校對學(xué)生在校情況進行有效的管理,通過計算機來管理相關(guān)資料,使管理更為方便、簡潔。系統(tǒng)的目標(biāo)為與學(xué)校日常的工作,管理相結(jié)合,滿足日常工作的需要并達到操作過程中的直觀,簡單,安全,方便等要求。實現(xiàn)學(xué)院學(xué)生日常管理的計算機化,拋棄原有手工低效率的工作狀態(tài),對學(xué)生、課程安排、成績記錄等計算機化的管理,并提供信息查詢功能。每個學(xué)期每人所學(xué)課程都不相同,所

38、有的這些數(shù)據(jù)都需要登記,數(shù)據(jù)繁多而且移動頻繁,設(shè)計本系統(tǒng)來使學(xué)生管理工作更簡單,明了,易于管理和查詢。</p><p>  作為計算機應(yīng)用的一部分,使用計算機對學(xué)生信息進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學(xué)生檔案管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。</p><p&g

39、t;  2.2.2 角色識別</p><p>  角色識別的任務(wù)是找出所有可能與系統(tǒng)發(fā)生交互的實體。他們的行為不受系統(tǒng)控制,不同的用戶,有不同的權(quán)限,普通學(xué)生用戶只可以在前臺登錄,查看自己基本的信息,看不到其他人的信息,系統(tǒng)可以通過學(xué)號來辨別不同的學(xué)生用戶。教師管理員只能在后臺登錄管理,可以在后臺對學(xué)生信息成績等進行有效的管理。</p><p>  2.2.3 系統(tǒng)需求</p>

40、<p>  通過調(diào)查,要求系統(tǒng)需要有以下功能:</p><p>  由于操作人員的計算機知識一般,要求有良好的人機界面;</p><p>  由于該系統(tǒng)的使用對象多,要求有較好的權(quán)限管理; </p><p>  原始數(shù)據(jù)修改簡單方便,支持多條件修改;</p><p>  方便的數(shù)據(jù)查詢,支持多條件查詢;</p>&

41、lt;p>  在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡單,數(shù)據(jù)穩(wěn)定性好;</p><p>  數(shù)據(jù)應(yīng)該有良好的安全性,保密性。</p><p><b>  2.3 系統(tǒng)功能圖</b></p><p><b>  圖2.1系統(tǒng)功能圖</b></p><p><b>  2.4 系統(tǒng)用例圖<

42、/b></p><p><b>  圖2.2系統(tǒng)用例圖</b></p><p>  2.5 系統(tǒng)開發(fā)環(huán)境及工具</p><p>  開發(fā)環(huán)境:Windows7</p><p><b>  Tomcat6.0</b></p><p><b>  jdk 1.5.

43、0</b></p><p>  Internet Explorer 6.0 </p><p>  腳本語言:JavaScript</p><p><b>  編寫語言:Java</b></p><p>  數(shù)據(jù)庫工具:Microsoft SQLServer 2005</p><p> 

44、 JSP開發(fā)工具:MyEclipse</p><p>  2.6 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計</p><p><b>  本系統(tǒng)所用到的表:</b></p><p>  管理員信息表,表名稱標(biāo)識dbo.admin,結(jié)構(gòu)見表2.1 </p><p>  表2.1 管理員信息表</p><p>  管理員信息表主

45、要用于保存管理員信息,表中的“id”字段是在數(shù)據(jù)庫操作時自動生成的,而“username”是在操作數(shù)據(jù)庫時,不能有相同的用戶名存入。</p><p>  新聞信息表,表名稱標(biāo)識dbo.news,結(jié)構(gòu)見表2.2</p><p>  表2.2 新聞信息表</p><p>  新聞信息表主要用于保存新聞信息,表中的“id”字段是在數(shù)據(jù)庫操作時自動生成的。</p>

46、;<p>  新聞種類表,表名稱標(biāo)識dbo.newsclass,結(jié)構(gòu)見表2.3</p><p>  表2.3 新聞種類表</p><p>  學(xué)生成績表,表名稱標(biāo)識dbo.score,結(jié)構(gòu)見表2.4</p><p>  表2.4 學(xué)生成績表</p><p> ?。?)成績科目表,表名稱標(biāo)識dbo.score_class,結(jié)構(gòu)見表

47、2.5</p><p>  表2.5 成績科目表</p><p> ?。?)學(xué)生信息表,表名稱標(biāo)識dbo.student,結(jié)構(gòu)見表2.6</p><p><b>  表2.6學(xué)生信息表</b></p><p> ?。?)榮譽信息表,表名稱標(biāo)識dbo.huojiang,結(jié)構(gòu)見表2.7</p><p>

48、;  表 2.7 榮譽信息表</p><p> ?。?)過級情況表,表名稱標(biāo)識dbo.dengji,結(jié)構(gòu)見表2.8</p><p><b>  表 2.8 等級表</b></p><p><b>  系統(tǒng)功能模塊實現(xiàn)</b></p><p><b>  3.1 學(xué)生端</b>&

49、lt;/p><p>  3.1.1 學(xué)生登錄</p><p>  學(xué)生登錄頁是本系統(tǒng)的首頁,每個學(xué)生的初始用戶名和密碼都是自己的學(xué)號,第一次進入系統(tǒng)后可自行更改,界面見圖3.1</p><p><b>  圖3.1 登錄頁面</b></p><p>  功能代碼分析:本功能使用了javabean組件,封裝了連接數(shù)據(jù)庫的代碼,

50、提高了數(shù)據(jù)庫連接的效率,加快了頁面運行的速度。頁面中調(diào)用了session對象,存儲用戶名,使他在瀏覽整個網(wǎng)站時身份都會被記錄,本代碼的核心程序是調(diào)用javabean中的兩個方法executeQuery(查詢數(shù)據(jù)庫中的記錄)和executeUpdate(把數(shù)據(jù)插入到數(shù)據(jù)庫中),使用javabean組件有很大的好處,首先它的執(zhí)行效率更高、速度更快,還可以減少頁面中的代碼量,優(yōu)化了程序,減少了重復(fù)代碼,是jsp系統(tǒng)開發(fā)的重要部分[6]。<

51、;/p><p>  Javabean conn.java代碼</p><p>  package connect;</p><p>  import java.sql.*;</p><p>  public class conn{</p><p>  String sDBDriver="sun.jdbc.odbc

52、.JdbcOdbcDriver";</p><p>  String sConnStr="jdbc:odbc:student";</p><p>  Connection connect=null;</p><p>  ResultSet rs =null;</p><p>  public conn(){<

53、;/p><p><b>  try{</b></p><p>  Class.forName(sDBDriver);</p><p><b>  }</b></p><p>  catch(java.lang.ClassNotFoundException e){</p><p&g

54、t;  System.err.println(e.getMessage());</p><p><b>  }</b></p><p><b>  }</b></p><p>  public ResultSet executeQuery(String sql){</p><p><b>

55、  try{</b></p><p>  connect =DriverManager.getConnection(sConnStr);</p><p>  Statement stmt =connect.createStatement();</p><p>  rs = stmt.executeQuery(sql);</p><p&

56、gt;<b>  }</b></p><p>  catch(SQLException ex){</p><p>  System.err.println(ex.getMessage());</p><p><b>  }</b></p><p>  return rs;</p>&l

57、t;p><b>  }</b></p><p>  public int executeUpdate(String sql)</p><p><b>  {</b></p><p>  int result=0;</p><p><b>  try{</b></p&

58、gt;<p>  connect=DriverManager.getConnection(sConnStr);</p><p>  Statement stmt=connect.createStatement();</p><p>  result=executeUpdate(sql);</p><p><b>  }</b>&

59、lt;/p><p>  catch(SQLException ex){</p><p>  System.err.println(ex.getMessage());</p><p><b>  }</b></p><p>  return result;</p><p><b>  }<

60、;/b></p><p><b>  }</b></p><p>  代碼分析:程序從登錄頁獲取到用戶名和密碼,然后與數(shù)據(jù)庫中的學(xué)生用戶進行比較,如果用戶名和代碼與數(shù)據(jù)庫中的數(shù)據(jù)相吻合直接跳轉(zhuǎn)到首頁,如果不吻合則報告錯誤。</p><p>  <%@ page contentType="text/html;charset=

61、gb2312" %></p><p>  <%@ page import="java.sql.*"%></p><p>  <jsp:useBean id="dbconn" scope="page" class="connect.conn"/></p>&l

62、t;p>  <% String username=request.getParameter("username");</p><p>  String password=request.getParameter("password");</p><p>  ResultSet rs=null;</p><p> 

63、 rs=dbconn.executeQuery("select * from student where sno='"+username+"' and password='"+password+"'");</p><p>  if(rs.next()){ session.setAttribute("na&q

64、uot;,username);</p><p>  session.setAttribute("pa","ok");</p><p><b>  %> </b></p><p>  <jsp:forward page="index.jsp"/></p>

65、<p><b>  <%}</b></p><p><b>  else</b></p><p>  { out.println("登錄錯誤!??!");</p><p><b>  }%></b></p><p>  當(dāng)學(xué)生成功登錄

66、后會自動跳轉(zhuǎn)到主頁,在這個頁面,學(xué)生可以查看自己的在校信息、考勤情況、各科成績、鑒定情況、還可以修改登錄密碼修改、瀏覽校園新聞、查看優(yōu)秀學(xué)生信息,界面見圖3.2</p><p>  圖3.2 前臺主頁面</p><p>  本頁主要功能代碼是javascript 函數(shù) go ( ),他的主要功能是控制彈出框的大小尺寸。</p><p>  <script la

67、nuage=javascript></p><p>  function go(n)</p><p><b>  {</b></p><p><b>  a=n</b></p><p>  window.open(a,'','status=no,scrollbars=n

68、o,top=20,left=110,width=550,height=450')</p><p><b>  }</b></p><p>  </script> </p><p>  3.1.2 密碼修改</p><p>  模塊分析:當(dāng)?shù)谝淮螌W(xué)生登錄時,用戶名和密碼都是自己的學(xué)號這樣方便大家記憶,登

69、入系統(tǒng)后建議修改為自己的密碼,防止其他人惡意修改,保護自己的信息不被他人盜用,界面見圖3.3</p><p><b>  圖3.3 密碼修改</b></p><p>  3.1.3 個人信息查詢</p><p>  該功能是查看當(dāng)前登錄學(xué)生的在?;拘畔ⅲ▽W(xué)號、所在年級、所在院系、所在專業(yè)、所在班級,界面見圖3.4</p>&

70、lt;p><b>  圖3.4 個人情況</b></p><p>  功能分析:先用session判斷學(xué)生是否登錄,如果沒有登錄跳轉(zhuǎn)到登錄頁,如果是登錄用戶則從數(shù)據(jù)庫取出所對應(yīng)學(xué)生的信息顯示出來</p><p>  3.1.4 成績查詢</p><p>  本模塊是學(xué)生自己各科成績的查詢,學(xué)生在登錄系統(tǒng)之后才可以查詢,考試科目和對應(yīng)的分數(shù)

71、是管理員老師在后臺人工添加管理的,可以隨時變更,這樣大大方便了學(xué)生及時的了解自己的成績分數(shù),從而做好相應(yīng)的準(zhǔn)備,界面見圖3.5</p><p><b>  圖3.5 成績查詢</b></p><p>  模塊分析:本模塊調(diào)用javabean組件,分別從科目表和分數(shù)表中調(diào)出對應(yīng)學(xué)生的考試科目和所對應(yīng)的分數(shù),最終顯示在頁面中。</p><p>  

72、3.1.5 新聞瀏覽</p><p>  本模塊功能是瀏覽校園功能,登錄后才可以瀏覽,包括四個欄目,校內(nèi)通知、教學(xué)管理、就業(yè)信息、學(xué)生動態(tài),每個欄目顯示最新的5條信息,欄目名稱管理員可以在后臺管理更改,界面見圖3.6</p><p><b>  圖3.6 新聞瀏覽</b></p><p>  模塊代碼分析:先從數(shù)據(jù)庫中調(diào)用該分類最新的5條新聞,

73、然后用while循環(huán)語句列出每條新聞。</p><p>  <% String sql="select top 5 * from news where classid=1 order by id desc";</p><p>  rs=dbconn.executeQuery(sql);</p><p>  while(rs.next())&

74、lt;/p><p><b>  { %> </b></p><p>  <tr valign="top"></p><p>  <td bgcolor="#F7FFFF"><a href="javascript:news(<%=rs.getInt(&qu

75、ot;id")%>)" </p><p>  class=a>· <%=rs.getString("title")%></a></td></p><p><b>  </tr></b></p><p>  3.1.6 個人鑒定</

76、p><p>  本模塊是查看指導(dǎo)老師對自己在校表現(xiàn)的評價鑒定,是學(xué)生在校情況的一個參考,可以隨時在后臺更改,登錄后可以查看,界面見下圖3.7</p><p>  圖3.7 個人鑒定查看</p><p>  功能分析:當(dāng)學(xué)生登錄后session中會保存該學(xué)生的學(xué)號根據(jù)學(xué)號用select語句調(diào)用出學(xué)生的在校鑒定該功能用到了javabean組件。</p><

77、;p>  3.1.7 優(yōu)秀學(xué)生查詢</p><p>  本模塊可以查看優(yōu)秀學(xué)生的基本情況,包括姓名、學(xué)號、年級、院系、專業(yè),由老師在后臺進行推薦可以顯示出最新的6名優(yōu)秀學(xué)生。</p><p>  代碼分析:從student表中取出前六數(shù)據(jù)當(dāng)字段tj=1,然后用while循環(huán)打出6個推薦的優(yōu)秀學(xué)生,界面見圖3.8</p><p><b>  <%

78、</b></p><p>  String sql6="select top 6 * from student where tj='1' order by id desc";</p><p>  rs=dbconn.executeQuery(sql6);</p><p>  while(rs.next())</p

79、><p>  { int id=rs.getInt("id");</p><p>  name=rs.getString("name");</p><p><b>  %> </b></p><p><b>  <tr></b></

80、p><p>  <td bgcolor="#E7E7E7"><a href="javascript:yx(<%=id%>)" class=a><%=name%></p><p><b>  </a></td></b></p><p>&l

81、t;b>  </tr></b></p><p><b>  <%}%></b></p><p>  圖3.8 優(yōu)秀學(xué)生查詢</p><p><b>  3.2 后臺管理端</b></p><p>  3.2.1 管理后臺登錄</p><p

82、>  該頁面是系統(tǒng)后臺的主頁面,是本系統(tǒng)的一個主要功能模塊,系統(tǒng)管理員通過該模塊對系統(tǒng)進行管理,包括:管理員管理、新聞發(fā)布管理、學(xué)生信息管理、學(xué)生成績管理,界面見圖3.9</p><p><b>  圖3.9 后臺主頁</b></p><p>  功能分析:本頁面使用了框架技術(shù),頁面被分成了三部分,一部分是logo部分,一部分是菜單部分,還有一部分是顯示頁面。&

83、lt;/p><p>  3.2.2 管理員管理</p><p>  管理員管理包括:添加管理員用戶,更改管理員密碼兩部分。</p><p>  添加管理員:管理員用戶可以添加管理員,沒有限制,加強網(wǎng)站的管理,修改密碼功能可以使管理員用戶修改,管理員的用戶名是唯一的不可以重復(fù),超級管理員不可以被修改,界面見圖3.10、3.12和3.13</p><p&

84、gt;  圖3.10 添加管理員</p><p>  具體流程如圖3.11</p><p>  圖3.11 管理員添加流程圖</p><p>  功能代碼分析:該模塊主要用到fuction()函數(shù)來檢驗所提交的表單正確性,這樣以防止非法的、不合理的的注冊,提高數(shù)據(jù)的優(yōu)秀性,提交過來的用戶名先要被檢查一下是否存在,如果存在不允許添加否則報告錯誤。</p>

85、<p><b>  <%</b></p><p>  request.setCharacterEncoding("GBK");</p><p>  String username=request.getParameter("username");</p><p>  String pas

86、s=request.getParameter("pass");</p><p>  session.setAttribute("na",username); </p><p>  Connection conn=null;</p><p>  ResultSet rs=null;</p><p> 

87、 Statement stmt=null;</p><p><b>  try{</b></p><p>  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p>  conn=DriverManager.getConnection("jdbc:odbc:st

88、udent");</p><p>  stmt=conn.createStatement();</p><p>  String sql2="select username from admin where username='"+username+"'"; </p><p>  rs=stmt.ex

89、ecuteQuery(sql2);</p><p>  // out.print(rs);</p><p>  if(rs.next()){%></p><p>  <jsp:forward page="error.jsp"/></p><p><b>  <%}</b>&l

90、t;/p><p><b>  else{</b></p><p>  String sql="insert into admin(username,password,supper) values('"+username+"','"+pass+"','0')";<

91、;/p><p>  stmt.executeUpdate(sql);</p><p><b>  }</b></p><p><b>  }</b></p><p>  catch(Exception e)</p><p>  { out.print(e.getMessage(

92、));}</p><p>  out.println("<table align=center><tr><td>&nbsp;</td></tr><tr><td>新用戶注冊成功</td></tr>");%></p><p>  圖3.12 修改界面&l

93、t;/p><p>  圖3.13 修改密碼</p><p>  功能代碼分析:該功能模塊是位管理員提供密碼的修改功能,是管理員更方便的管理自己的用戶名密碼,更人性化的設(shè)計,只有普通管理員才可以被修改。</p><p>  <table width="73%" border="0" align="center&qu

94、ot; cellspacing="3" cellpadding="1"></p><p><b>  <tr></b></p><p>  <td height="33" bgcolor="#D1E4EF" align="center" cols

95、pan="3">管理員修改</td></p><p><b>  </tr></b></p><p><b>  <%</b></p><p>  //request.setCharacterEncoding("GBK");</p>

96、<p>  ResultSet rs=null;</p><p>  String sql="select * from admin where supper='0'";</p><p>  rs=dbconn.executeQuery(sql); </p><p>  while(rs.next()){</p&g

97、t;<p>  int id=rs.getInt("id");</p><p>  String username=rs.getString("username");</p><p>  String password=rs.getString("password");</p><p>  S

98、tring suppper=rs.getString("supper");</p><p><b>  %> </b></p><p><b>  <tr></b></p><p>  <td height="38" bgcolor="#D1E4E

99、F" align="center">id:<%=id%></td><td height="38" bgcolor="#D1E4EF" align="center">用戶名:<%=username%></td><td height="38" align=&qu

100、ot;center" bgcolor="#D1E4EF"><a href="user_del.jsp?id=<%=id%>" onClick="return ConfirmDel()">刪除</a> <a href="user_repair.jsp?id=<%=id%>">修改<

101、;/a></td></p><p><b>  </tr></b></p><p><b>  <%}%> </b></p><p><b>  <tr></b></p><p>  <td height="

102、;27" bgcolor="#D1E4EF" colspan="3">&nbsp;</td></p><p><b>  </tr></b></p><p><b>  </table></b></p><p>  3.2.

103、3 新聞發(fā)布管理</p><p>  本模塊是新聞后臺管理系統(tǒng),通過該模塊管理員可以對系統(tǒng)新聞進行添加修改等操作,實現(xiàn)新聞系統(tǒng)的的動態(tài)管理,可以達到系統(tǒng)的實時更新方便快捷的管理,本管理功能分為新聞目錄管理、新聞添加功能、新聞修改/刪除功能,三個模塊。</p><p>  目錄管理如圖3.14</p><p>  圖3.14 新聞目錄</p><p

104、>  功能代碼:從數(shù)據(jù)庫newsclass表中調(diào)出目錄內(nèi)容,還用到了form表單提交功能。</p><p>  <%request.setCharacterEncoding("GBK");</p><p>  ResultSet rs=null;</p><p>  String sql="select * from new

105、sclass";</p><p>  rs=dbconn.executeQuery(sql);</p><p>  while(rs.next()){</p><p>  int id=rs.getInt("id"); </p><p>  String classname=rs.getString("

106、classname"); </p><p><b>  %></b></p><p>  <form name=form1 method=post action="newsclass_xg.jsp"></p><p>  <tr align="center">&

107、lt;/p><p>  <td width="15%" bgcolor="#D1E4EF"><%=id%></td></p><p>  <td width="65%" height="51" bgcolor="#D1E4EF"><input

108、 type=text name=classname value=<%=classname%>></td></p><p>  <td width="20%" bgcolor="#D1E4EF"><input type="submit" name="submit" value="

109、修改"> <input type=hidden name="id" value="<%=id%>"></td></p><p><b>  </tr></b></p><p><b>  </form></b></p>

110、<p><b>  <% } %></b></p><p>  目錄修改:主要用到了sql語言的update方法 更新數(shù)據(jù)。</p><p>  <%request.setCharacterEncoding("GBK");</p><p>  String id=request.getPara

111、meter("id");</p><p>  String classname=request.getParameter("classname");</p><p>  Connection conn=null;</p><p>  ResultSet rs=null;</p><p>  Statem

112、ent stmt=null;</p><p><b>  try{</b></p><p>  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p>  conn=DriverManager.getConnection("jdbc:odbc:student&q

113、uot;);</p><p>  stmt=conn.createStatement(); </p><p>  String sql="update newsclass set classname='"+classname+"' where id='"+id+"'";</p>

114、<p>  stmt.executeUpdate(sql); </p><p><b>  }</b></p><p>  catch(Exception e)</p><p>  { out.print(e.getMessage());}</p><p>  out.print("修

115、改成功");</p><p>  out.print(id);</p><p><b>  %></b></p><p>  <jsp:forward page="newsclass.jsp"/></p><p>  新聞添加模塊用于添加新聞信息,界面見圖3.15</

116、p><p>  圖3.15 新聞添加</p><p>  功能代碼分析:該功能實現(xiàn)新聞的添加,用select 語句 列出所有的新聞目錄,當(dāng)添加新聞的時可以選擇所對應(yīng)的目錄,以便更好地進行管理。</p><p>  <%@page contentType="text/html;charset=gb2312" %></p>&l

117、t;p>  <%@page import="java.sql.*"%></p><p>  <jsp:useBean id="dbconn" scope="page" class="connect.conn"/></p><p>  <html><head>

118、</head><body></p><p>  <table width="775" border="1" cellpadding="0" cellspacing="0" align="center" bgcolor="#E7E7E7"><tr>&

119、lt;td>新聞修改</td></tr><tr><td></p><p>  <form action="regist_ok.jsp" name="form" method="post" onSubmit="return check()"></p><

120、;p>  <div align="center"> <table width="600" height="283" border="0"></p><p><b>  <%</b></p><p>  request.setCharacterEncodi

121、ng("GBK");</p><p>  ResultSet rs=null;</p><p>  rs=dbconn.executeQuery("select * from news");</p><p>  while(rs.next()){</p><p>  int id=rs.getInt(&

122、quot;id"); String title=rs.getString("title");</p><p><b>  %> <tr></b></p><p>  <td width="83" ><div align="center">文章標(biāo)題:<

123、;/div></td></p><p>  <td width="507"><div align="center"><%=title%></div></td></p><p><b>  </tr></b></p><p

124、>  <%}%> </table></div></form> </td></tr></p><p><b>  </table></b></p><p><b>  </body></b></p><p><b&g

125、t;  </html></b></p><p>  新聞修改刪除模塊,界面見圖3.16</p><p>  圖3.16 新聞刪除</p><p>  模塊代碼分析:從news表中 用select 語句列出所有的新聞,按照添加的順序排列出來,管理員可以對新聞進行修改、刪除操作。</p><p><b>  &l

126、t;%</b></p><p>  request.setCharacterEncoding("GBK");</p><p>  ResultSet rs=null;</p><p>  rs=dbconn.executeQuery("select * from news");</p><p&g

127、t;  while(rs.next()){</p><p>  String classname="";</p><p>  int id=rs.getInt("id");</p><p>  String title=rs.getString("title");</p><p> 

128、 //String classid=rs.getString("classid");</p><p>  String author=rs.getString("author");</p><p><b>  %> </b></p><p><b>  <tr >&

129、lt;/b></p><p>  <td bgcolor="#D1E4EF"><%=id%></td></p><p>  <td bgcolor="#D1E4EF"><%=title%></td></p><p>  <td bgcolor=

130、"#D1E4EF"><%=author%></td></p><p>  <td width="103" bgcolor="#D1E4EF"><a href="new_edit.jsp?id=<%=id%>">修改</a>&nbsp;<a hr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論