版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、江蘇大學(xué)畢業(yè)設(shè)計(jì)論文學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)THE DESIGN AND REALIZATION OF THE RESULT OF STUDENT ADMINISTRATION MANAGEMENT SYSTEM學(xué)生姓名:學(xué) 號(hào):年級(jí)專業(yè):2004級(jí)計(jì)算機(jī)科學(xué)與技術(shù)指導(dǎo)老師:學(xué) 院:應(yīng)用科學(xué)技術(shù)學(xué)院提交日期:年 月目錄 HYPERLINK l _Toc137783592 摘 要3一、 HYPERLINK l _Toc137783595 開發(fā)平臺(tái)及工具簡(jiǎn)介5 二、系統(tǒng)分析7(一)學(xué)生成績(jī)管理系統(tǒng)概述7(二) 需求分析81) 功能需求分析82) HYPERLINK l _Toc13778359
2、8 性能需求分析9 HYPERLINK l _Toc137783599 3)數(shù)據(jù)庫(kù)需求分析數(shù)據(jù)流圖94) HYPERLINK l _Toc137783600 數(shù)據(jù)結(jié)構(gòu)分析數(shù)據(jù)流圖10 HYPERLINK l _Toc137783601 (三)系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)12三、 HYPERLINK l _Toc137783602 系統(tǒng)設(shè)計(jì)13(一)設(shè)計(jì)目標(biāo)13(二)開發(fā)及運(yùn)行環(huán)境13(三) HYPERLINK l _Toc137783603 數(shù)據(jù)庫(kù)設(shè)計(jì)14 HYPERLINK l _Toc137783604 四、系統(tǒng)的實(shí)現(xiàn)17(一)學(xué)生查詢成績(jī)部分17(二)后臺(tái)管理成績(jī)部分19 登陸模塊19 年紀(jì)班級(jí)管理
3、模塊20 課程管理模塊24 評(píng)分模塊24 學(xué)生信息管理模塊27 管理員模塊29五、系統(tǒng)存在的問(wèn)題及前景展望30 (一)系統(tǒng)存在問(wèn)題30 (二)前景展望30 HYPERLINK l _Toc137783608 參考文獻(xiàn)31摘要隨著現(xiàn)代計(jì)算機(jī)科學(xué)的發(fā)展,計(jì)算機(jī)信息系統(tǒng)越來(lái)越受到重視,網(wǎng)絡(luò)已經(jīng)成為人們交流信息的重要方式,所以基于網(wǎng)絡(luò)平臺(tái)的各種系統(tǒng)不斷出現(xiàn),B/S結(jié)構(gòu)的軟件已經(jīng)成為人們生活工作的一種重要工具。本文將介紹如何使用java后臺(tái)結(jié)合RIA富客戶端技術(shù)制作學(xué)生管理系統(tǒng),其中涉及到數(shù)據(jù)庫(kù)的建立和系統(tǒng)模塊功能的實(shí)現(xiàn),并在最后說(shuō)明了系統(tǒng)存在問(wèn)題和前景展望。關(guān)鍵詞:java,SQL ,TOMCAT,學(xué)
4、生成績(jī)管理AbstractAlong with the modern computer science development, the computer information system is more and more important, the network already became the people to exchange the information important way, therefore appeared systems that based on network platform, the B/S system already became one k
5、ind of important tool which the people exchanged. Now we will introduce how to use java and RIA to develop a student score management system. This part including database creation and the system function realization. Finally expound the matter and shortage of the system, in order to ameliorate bette
6、r in the future.Keywords: java, SQL, TOMCAT,Student score management開發(fā)平臺(tái)及工具簡(jiǎn)介1、Java概述 Java包括Java編程語(yǔ)言、開發(fā)工具和環(huán)境、Java類庫(kù)等。Java語(yǔ)言是美國(guó)SUN公司開發(fā)的一種完全面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。Java語(yǔ)言由C+語(yǔ)言發(fā)展而來(lái),但比C+語(yǔ)言簡(jiǎn)單。Java語(yǔ)言具有簡(jiǎn)單、與平臺(tái)無(wú)關(guān)、高效、健壯、安全、多線程等特點(diǎn),它是當(dāng)前網(wǎng)絡(luò)編程中的首選語(yǔ)言。JDK提供了Java程序的編譯和運(yùn)行方式,并且編譯和運(yùn)行都是命令行方式。JDK本身沒(méi)有提供源程序編輯環(huán)境,沒(méi)有提供可視化的集成開發(fā)環(huán)境(Integrate
7、d Development Environment,IDE)。有一些其他Java開發(fā)工具提供集成開發(fā)環(huán)境,如Eclipse、JCreator、JBuilder等,它們都是建立在JDK的運(yùn)行時(shí)環(huán)境之上的。 Java是一門編譯語(yǔ)言(compiled language),但它不直接生成硬件處理器指令,而是生成一種字節(jié)碼(bytecodes)這種字節(jié)碼由Java虛擬機(jī)解釋執(zhí)行。 Java虛擬機(jī)(Java Virtual Machine,JVM)實(shí)際上是一個(gè)程序,它定義了指令集、寄存器集、類文件結(jié)構(gòu)棧、垃圾收集堆、內(nèi)存區(qū)域等,提供了跨平臺(tái)能力的基礎(chǔ)框架。Java虛擬機(jī)實(shí)現(xiàn)了一臺(tái)理想的計(jì)算機(jī),并可以優(yōu)化運(yùn)
8、行Java程序。因此,一個(gè)Java程序其實(shí)是被Java虛擬機(jī)執(zhí)行的,而Java虛擬機(jī)運(yùn)行于實(shí)際的處理器之上。Java虛擬機(jī)執(zhí)行應(yīng)用程序具有以下三個(gè)典型特點(diǎn):1)JavaJava2、SQL Server 2000SQL Server 2000 是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本該版本繼承了SQL Server 7.0 版本的優(yōu)點(diǎn)同時(shí)又比它增加了許多更先進(jìn)的功能具有使用方便可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn)可跨越從運(yùn)行Microsoft Windows 98 的膝上型電腦到運(yùn)行Microsoft Windows 2000 的大型多處理器的服務(wù)器等多種平
9、臺(tái)使用。它的優(yōu)點(diǎn)有: 1)上手容易,學(xué)習(xí)SQL Server是掌握其他平臺(tái)及大型數(shù)據(jù),如Oracle,Sybase,DB/2的基礎(chǔ)。因?yàn)檫@些大型數(shù)據(jù)庫(kù)對(duì)于設(shè)備、平臺(tái)、人員知識(shí)的要求往往較高,而并不是每個(gè)人都具備這樣的條件,且有機(jī)會(huì)去接觸它們。但有了SQL Server的基礎(chǔ),再去學(xué)習(xí)和使用它們就容易多了。IT行業(yè)的實(shí)踐經(jīng)驗(yàn)充分證明了這一點(diǎn)。 2)兼容性良好,由于今天Windows操作系統(tǒng)占領(lǐng)著主導(dǎo)地的位,選擇SQL Server一定會(huì)在兼容性方面取得一些優(yōu)勢(shì)。另外,SQL Server 2000 除了具有擴(kuò)展性,可靠性以外,還具有可以迅速開發(fā)新的因特網(wǎng)系統(tǒng)的功能。尤其是它可以直接存貯 XML
10、數(shù)據(jù),可以將搜索結(jié)果以 XML格式輸出等特點(diǎn),有利于構(gòu)建了異構(gòu)系統(tǒng)的互操作性,奠定了面向互聯(lián)網(wǎng)的企業(yè)應(yīng)用和服務(wù)的基石。這些特點(diǎn)在.NET 戰(zhàn)略中發(fā)揮著重要的作用。3),Microsoft SQL Server 2000是在SQL Server 7.0的基礎(chǔ)上對(duì)性能、可靠性、質(zhì)量以及易用性進(jìn)行了擴(kuò)展。SQL Server 2000中包含許多新特性,這些特性使其成為針對(duì)電子商務(wù)、數(shù)據(jù)倉(cāng)庫(kù)和在線商務(wù)解決方案的卓越的數(shù)據(jù)庫(kù)平臺(tái)。其增強(qiáng)的特性包括對(duì)豐富的擴(kuò)展標(biāo)記語(yǔ)言(XML)的支持、綜合分析服務(wù)以及便捷的數(shù)據(jù)庫(kù)管理。4)電子商務(wù),在使用由Microsoft SQL Server 2000關(guān)系數(shù)據(jù)庫(kù)引擎的
11、情況下,XML數(shù)據(jù)可在關(guān)系表中進(jìn)行存儲(chǔ),而查詢則能以XML格式將有關(guān)結(jié)果返回。此外,XML支持還簡(jiǎn)化了后端系統(tǒng)集成,并實(shí)現(xiàn)了跨防火墻的無(wú)縫數(shù)據(jù)傳輸。你還可以使用Hypertext Transfer Protocol(超文本傳輸協(xié)議, )來(lái)訪問(wèn)SQL Server 2000,以實(shí)現(xiàn)面向SQL Server 2000數(shù)據(jù)庫(kù)的安全Web連接和無(wú)須額外編程的聯(lián)機(jī)分析處理(OLAP)多維數(shù)據(jù)集。5)數(shù)據(jù)倉(cāng)庫(kù),Microsoft SQL Server 2000非常明顯的改進(jìn)就是增加了OLAP(聯(lián)機(jī)分析處理)功能,這可以讓很多中小企業(yè)用戶也可以使用數(shù)據(jù)倉(cāng)庫(kù)的一些特性進(jìn)行分析。OLAP可以通過(guò)多維存儲(chǔ)技術(shù)對(duì)大
12、型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級(jí)的分析工作。數(shù)據(jù)挖掘功能能夠揭示出隱藏在大量數(shù)據(jù)中的傾向及趨勢(shì),它允許組織或機(jī)構(gòu)最大限度的從數(shù)據(jù)中獲取價(jià)值。通過(guò)對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行有效分析,這一功能可以對(duì)未來(lái)的趨勢(shì)進(jìn)行預(yù)測(cè)。6)增強(qiáng)的在線商務(wù),Microsoft SQL Server 2000簡(jiǎn)化了管理、優(yōu)化工作,并且增強(qiáng)了迅速、成功的部署在線商務(wù)應(yīng)用程序所需的可靠性和伸縮性。其中,用以提高可靠性的特性包括日志傳送、在線備份和故障切換群集。在伸縮性方面的改進(jìn)包括對(duì)多達(dá)32顆CPU和64 GB RAM的支持。通過(guò)自動(dòng)優(yōu)化和改進(jìn)后的管理特性-諸如數(shù)據(jù)文件尺寸的自動(dòng)管理、基于向?qū)У臄?shù)據(jù)庫(kù)拷貝、自動(dòng)內(nèi)存管理和簡(jiǎn)化的故障切換群集
13、安裝與管理,在線商務(wù)應(yīng)用程序能夠被迅速部署并有效管理。7)利于構(gòu)筑敏捷性商務(wù),所謂敏捷性商務(wù) 就是能夠打破內(nèi)部和外部的商業(yè)界限,對(duì)迅速改變的環(huán)境做出快速反應(yīng)。微軟已經(jīng)與關(guān)鍵的合作伙伴建立起了戰(zhàn)略關(guān)系,創(chuàng)造出了能夠與許多供應(yīng)商的產(chǎn)品實(shí)現(xiàn)整合的解決方案,因而企業(yè)用戶并不需要做出要么完全接受,要么全部不要的承諾。在部署解決方案的過(guò)程中,企業(yè)用戶不一定要拆除原有的設(shè)備從頭。敏捷商務(wù)讓企業(yè)用戶能夠充分利用現(xiàn)有的系統(tǒng),自主決定所需的硬件和軟件解決方案以及由誰(shuí)來(lái)提供,伸縮自如、游刃有余。3、TOMCAT簡(jiǎn)介 Tomcat是一個(gè)帶有jsp環(huán)境的servlet容器.servlet容器是一個(gè)根據(jù)用戶的行為可以管理
14、和激活servlet的運(yùn)行時(shí)的shell.啟動(dòng)與關(guān)閉Tomcat,使用”bin”目錄中的腳本啟動(dòng)與關(guān)閉Tomcat. 啟動(dòng):uinx:bin/startup.sh ,win32:binstartup 。關(guān)閉: unix:bin/shutdown.sh ,win32:binshutdown 。Tomcat目錄結(jié)構(gòu) ,目錄名-描述: bin 包含啟動(dòng)/關(guān)閉腳本 ;conf 包含不同的配置文件, 包括 server.xml(Tomcat的主要配置文件)和為不同的Tomcat配置的web應(yīng)用設(shè)置缺省值的文件web.xml ;doc 包含各種Tomcat文檔 ;lib 包含Tomcat使用的jar文件.
15、unix平臺(tái)此目錄下的任何文件都被加到Tomcat的classpath中 ;logs Tomcat擺放日志文件的地方 ;src ServletAPI源文件.先別高興,這些只有些必須在Servlet容器內(nèi)實(shí)現(xiàn)的空接口和抽象類 ;webapps 包含web項(xiàng)目示例 ,此外Tomcat會(huì)創(chuàng)建如下目錄: work ,;classes可以創(chuàng)建此目錄來(lái)添加一些附加的類到類路徑中.任何加到此目錄中的類都可在Tomcat的類路徑中找到自身. Tomcat的腳本 ,Tomcat是一個(gè)Java程序,因此在設(shè)置好幾個(gè)環(huán)境變量后即可用命令行的方式運(yùn)行.然而設(shè)置Tomcat使用的每個(gè)環(huán)境變量和如下的命令行參數(shù)乏味且易錯(cuò)
16、.因此,Tomcat開發(fā)組提供了一些腳本使啟動(dòng)和關(guān)閉Tomcat變得輕松. 系統(tǒng)分析學(xué)生成績(jī)管理系統(tǒng)概述1)學(xué)生成績(jī)管理系統(tǒng)的發(fā)展背景學(xué)生成績(jī)管理是各大學(xué)的主要日常管理工作之一,涉及到校、系、師、生的諸多方面,隨著教學(xué)體制的不斷改革,尤其是學(xué)分制、選課制的展開和深入,學(xué)生成績(jī)?nèi)粘9芾砉ぷ骷氨4婀芾砣遮叿敝亍?fù)雜。迫切需要研制開發(fā)一款功能強(qiáng)大,操作簡(jiǎn)單,具有人性化的學(xué)生成績(jī)管理系統(tǒng)。目前研究的現(xiàn)狀在安全性和信息更新化方面存在有一定的不足,各現(xiàn)有系統(tǒng)資料單獨(dú)建立,共享性差;在以管理者為主體的方式中,信息取舍依賴管理者對(duì)于信息的認(rèn)知與喜好,較不容易掌握用戶真正的需求,也因此無(wú)法完全滿足用戶的需求。因
17、此,教務(wù)管理軟件應(yīng)充分依托校園網(wǎng),實(shí)現(xiàn)教務(wù)信息的集中管理、分散操作、信息共享,使傳統(tǒng)的教務(wù)管理朝數(shù)字化、無(wú)紙化、智能化、綜合化的方向發(fā)展,并為進(jìn)一步實(shí)現(xiàn)完善的計(jì)算機(jī)教務(wù)管理系統(tǒng)和全校信息系統(tǒng)打下良好的基礎(chǔ)。隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,Internet/Intranet應(yīng)用在全球范圍內(nèi)日益普及,在眾多的網(wǎng)絡(luò)服務(wù)中,Web給人耳目一新的感覺(jué),而在這其中,網(wǎng)絡(luò)已經(jīng)日漸普及,任何人可以在網(wǎng)絡(luò)所提供的平臺(tái)上進(jìn)行自由的交流,通過(guò)網(wǎng)絡(luò),學(xué)生可以通過(guò)在線的網(wǎng)絡(luò)直接查詢程序,而學(xué)校教師也可在網(wǎng)上在線管理學(xué)生的成績(jī),不需要再去張貼成績(jī)單,使用了在線電子系統(tǒng),既便于數(shù)據(jù)查詢不容易使數(shù)據(jù)丟失,又省去了印刷張貼的麻
18、煩,可謂一舉兩得。B/S系統(tǒng)得益于網(wǎng)絡(luò)的興起,采用瀏覽器作為前端用戶操作的平臺(tái),所有的操作系統(tǒng)都預(yù)裝了網(wǎng)絡(luò)瀏覽器,比如IE,用戶不用再去費(fèi)心安裝每個(gè)系統(tǒng)的客戶端就可以通過(guò)瀏覽器訪問(wèn)服務(wù)器上架設(shè)的系統(tǒng)只是隨著網(wǎng)絡(luò)的發(fā)展,人們不再局限于只查看文字信息圖片這些靜態(tài)信息,對(duì)B/S系統(tǒng)的互操作性有了進(jìn)一步的需求,這才興起了RIA富客戶端的風(fēng)潮,使用各種技術(shù)對(duì)瀏覽器進(jìn)行功能上的增強(qiáng),讓它可以滿足現(xiàn)代用戶的需要。這套學(xué)生成績(jī)管理系統(tǒng),就是基于java平臺(tái)和ajax實(shí)現(xiàn)的RIA富客戶端開發(fā)的,它包括學(xué)生查詢平臺(tái)和后臺(tái)管理平臺(tái)兩部分,分別為學(xué)生提供成績(jī)查詢功能,為老師提供管理學(xué)生成績(jī)的功能。2)方案論證 成績(jī)管
19、理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。本系統(tǒng)主要完成對(duì)學(xué)生成績(jī)的管理,包括數(shù)據(jù)庫(kù)中表的添加、修改、刪除等。系統(tǒng)還可以完成對(duì)各類信息的瀏覽、查詢、添加、刪除、修改等功能。3) 開發(fā)工具的選擇本系統(tǒng)開發(fā)工具:+ SQL SERVER 2000需求分析1) 功能需求分析 該學(xué)生成績(jī)管理系統(tǒng)具備三方面的功能:一方面是學(xué)生用戶,學(xué)生通過(guò)輸入學(xué)號(hào)和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些基礎(chǔ)查詢(學(xué)生信息查詢、班級(jí)信息查詢、課程信息查詢)、成績(jī)
20、管理(成績(jī)查詢、計(jì)算平均分)重新登陸系統(tǒng);一方面老師進(jìn)入該系統(tǒng)則比學(xué)生多一些權(quán)限:成績(jī)輸入、成績(jī)查詢。具體功能的詳細(xì)描述如下1 選擇學(xué)生基本維護(hù)菜單命令,即可進(jìn)入 學(xué)生基本維護(hù)功能窗體,在其中輸入學(xué)生的相關(guān)信息,如果需要添加或修改學(xué)生信息,則單擊相應(yīng)的按紐,輸入新信息后單擊添加就可以了。需要?jiǎng)h除一條信息,則只要選擇這條信息再點(diǎn)擊 刪除。在搜索條件中輸入相關(guān)的條件,單擊 查詢就可查找信息。2 選擇學(xué)生信息查詢菜單命令,即可進(jìn)入學(xué)生信息查詢功能窗體,在其中的下拉列表中選擇你要看的信息,則在下面的表格中顯示你要的信息。3 選擇成績(jī)管理 添加成績(jī)菜單命令,即可進(jìn)入 添加成績(jī)功能窗體,此功能權(quán)限只有管理
21、員和教師。4 選擇成績(jī)管理 輸入成績(jī)菜單命令,即可進(jìn)入 輸入成績(jī)功能窗體,此功能權(quán)限只有管理員和教師。5 選擇成績(jī)管理 修改成績(jī) 界面,此功能規(guī)管理員所有。6 選擇成績(jī)管理 查詢成績(jī)界面此界面對(duì)學(xué)生也是可見的,它的權(quán)限規(guī)所有用戶所有。7 選擇登陸 重新登陸 則會(huì)返回登陸界面,為用戶提供方便。8 選擇退出將退出整個(gè)系統(tǒng)。2) 性能需求分析時(shí)間特性要求:在軟件方面,響應(yīng)時(shí)間有點(diǎn)慢,因?yàn)槭怯肑Builder做的,它占用內(nèi)存比較大,更新處理時(shí)間比較快而且迅速。安全性:設(shè)立口令號(hào)和密碼驗(yàn)證方式,防止非法用戶登錄進(jìn)行操作。也就是用戶只有管理員、學(xué)生和教師才能進(jìn)入這個(gè)系統(tǒng),用戶憑口令號(hào)和密碼進(jìn)入此系統(tǒng),系統(tǒng)
22、會(huì)自動(dòng)判斷用戶是那種類型,分別擁有不同的權(quán)限。3) 數(shù)據(jù)庫(kù)需求分析數(shù)據(jù)流圖在教務(wù)系統(tǒng)中功能模塊主要牽涉到的信息包括:是學(xué)生信息(base_info)、班級(jí)信息(class_info)、課程信息(class_info)、成績(jī)表(chengjibiao)、選課表 (xuankebiao)、登陸表(stu)。學(xué)生信息:包含學(xué)號(hào)(id)、姓名(name)、班級(jí)(class)、班級(jí)(grade)、性別(sex)課程信息:包括課程編號(hào)(course_id)、課程名稱(coursename)姓名(name)、成績(jī)(result) 成績(jī)表:編號(hào)(number)、學(xué)號(hào)(id)、課程名稱(coursename)、
23、成績(jī)(result)班級(jí)信息:班級(jí)編號(hào)(bjbh)、學(xué)號(hào)(id)、姓名(name)、班級(jí)名稱(bjmc)。登陸表:口令號(hào)(id)、密碼(password)。尋找信息登陸信息用 戶數(shù) 據(jù) 庫(kù)賬號(hào)信息2 開發(fā)環(huán)境與工具介紹前端客戶端我用的是Macromedia Dreamweaver 8來(lái)編寫JSP文件。中間業(yè)務(wù)邏輯層的JavaBeans用的是JBuilderX EnterpriseX版。數(shù)據(jù)庫(kù)的編寫是采用MYSQL數(shù)據(jù)庫(kù)。由于我用的是JBuilderX Enterprise版開發(fā)的這個(gè)系統(tǒng),這個(gè)開發(fā)軟件功能十分強(qiáng)大,所以自然對(duì)開發(fā)環(huán)境要求相對(duì)來(lái)說(shuō)比較高。1對(duì)系統(tǒng)硬件的要求:最小512M RAM,
24、推薦786MB RAM。2. 對(duì)系統(tǒng)平臺(tái)的要求: Windows平臺(tái) CPU:Intel PentiumIII 及以上兼容系列500MHz以上。 操作系統(tǒng):Microsoft Windows2000(SP4)、WindowXP或者WindowsServer2003。Linux平臺(tái) CPU:Intel PentiumIII 及以上兼容系列500MHz以上。操作系統(tǒng):Sun Java Desktop System Release2或者RedHat Enterprise Linux 3 .0 2.2 運(yùn)行環(huán)境: 硬件:適用于數(shù)據(jù)吞吐量較大的不同服務(wù)器; 軟件 :服務(wù)器端:WINDOWS XP+MyS
25、QL用戶端: WindowXP+IE根據(jù)以上劃分的具體數(shù)據(jù)信息,得到數(shù)據(jù)流圖如: 操 作登 錄錯(cuò)誤信息返回信息1.1數(shù)據(jù)庫(kù)需求分析數(shù)據(jù)流圖4)數(shù)據(jù)結(jié)構(gòu)分析學(xué)生信息=組成: 學(xué)號(hào)(id)、姓名(name)、班級(jí)(class)、性別(sex)、地址(address)課程信息=組成: 編號(hào)(course_id)、課程名稱(coursename)、教師(teacher)選課信息=組成:編號(hào)(select_id) 課程名稱(coursename)、課程編號(hào)(course_id)、學(xué)號(hào)(xh)、姓名(name)、成績(jī)(result) 、教師(teacher)成績(jī)表包括=組成:編號(hào)(number)、學(xué)號(hào)(i
26、d)、課程名稱(coursename)、成績(jī)(result)、教師(teacher) 課程信息包括=組成:課程編號(hào)(course_id)、課程名稱(coursename)、教師(teacher)班級(jí)信息=組成:班級(jí)編號(hào)(bjbh)、年級(jí)(nj)、班級(jí)名稱(bjmc)、人數(shù)(rs)、班主任(bzr)登陸表=組成:口令號(hào)(id)、密碼(password)、權(quán)限(rightlimit)1、對(duì)圖1.1中所涉及的數(shù)據(jù)流描述如下:1) 數(shù)據(jù)流名:口令號(hào)說(shuō)明:根據(jù)這個(gè)口令號(hào)定位到用戶管理數(shù)據(jù)庫(kù),以便進(jìn)行身份驗(yàn)證。數(shù)據(jù)流來(lái)源:登陸界面輸入的口令號(hào)和密碼。數(shù)據(jù)流去向:其中用戶口令信息將存在于整個(gè)操作過(guò)程中,防止
27、非法登陸。數(shù)據(jù)流組成:口令號(hào)(文本);密碼(文本)數(shù)據(jù)流名:尋找信息說(shuō)明:根據(jù)用戶在學(xué)生信息維護(hù)的時(shí)候所填寫的信息。數(shù)據(jù)流來(lái)源:學(xué)生信息維護(hù)界面學(xué)生輸入包含學(xué)號(hào)、班級(jí)編號(hào)、名稱等。數(shù)據(jù)流去向:學(xué)號(hào)將存在整個(gè)操作,其它的存入數(shù)據(jù)庫(kù)。數(shù)據(jù)流組成:學(xué)號(hào)(文本);姓名(文本)等數(shù)據(jù)流名:尋找信息說(shuō)明:根據(jù)用戶在成績(jī)管理的時(shí)候所填寫的信息。數(shù)據(jù)流來(lái)源:成績(jī)輸入、修改、添加等界面用戶輸入包含課程編號(hào)、課程名稱、成績(jī)、教師。數(shù)據(jù)流去向:學(xué)號(hào)、班級(jí)編號(hào)、課程編號(hào)將存在整個(gè)操作,其它的存入數(shù)據(jù)庫(kù)。數(shù)據(jù)流組成:課程編號(hào)(文本)、課程名稱(文本)、教師(文本)等。數(shù)據(jù)流名:返回信息說(shuō)明:根據(jù)用戶在學(xué)生信息維護(hù)的時(shí)候
28、所填寫的信息存入了數(shù)據(jù)庫(kù)之后。數(shù)據(jù)流來(lái)源:由學(xué)生信息維護(hù)界面學(xué)生輸入的包含學(xué)號(hào)、姓名、性別等存入數(shù)據(jù)庫(kù)的。數(shù)據(jù)流去向:學(xué)生信息維護(hù)界面。數(shù)據(jù)流組成:學(xué)號(hào)(文本)、姓名(文本)、班級(jí)名稱(文本)、性別(文本)等。數(shù)據(jù)流名:返回信息說(shuō)明:根據(jù)用戶在成績(jī)管理的時(shí)候所填寫的信息存入數(shù)據(jù)庫(kù)后。數(shù)據(jù)流來(lái)源:由成績(jī)管理輸入的包含班級(jí)名稱、教師、課程名、成績(jī)存入數(shù)據(jù)庫(kù)的。數(shù)據(jù)流去向:成績(jī)管理的各子界面。數(shù)據(jù)流組成:班級(jí)編號(hào)(文本);班級(jí)名稱(文本);教師(文本)等2. 對(duì)圖1.1中所涉及的處理過(guò)程描述如下:處理過(guò)程名:登陸輸入數(shù)據(jù)流:口令號(hào)、密碼輸出數(shù)據(jù)流:不符合輸入條件的錯(cuò)誤信息 處理過(guò)程邏輯:用 IF條件
29、進(jìn)行判斷。處理過(guò)程名:班級(jí)信息維護(hù)輸入數(shù)據(jù)流:班級(jí)編號(hào)、班級(jí)名稱、教師等輸出數(shù)據(jù)流:班級(jí)編號(hào)、班級(jí)名稱等 ,其中班級(jí)編號(hào)將存在整個(gè)操作。處理過(guò)程號(hào):班級(jí)編號(hào),其中班級(jí)編號(hào)將存在整個(gè)操作。處理過(guò)程名:學(xué)生信息維護(hù)輸入數(shù)據(jù)流:學(xué)號(hào)、姓名、班級(jí)編號(hào)、性別等。輸出數(shù)據(jù)流:學(xué)號(hào)、姓名、班級(jí)編號(hào)、性別等。其中學(xué)號(hào)將存在整個(gè)操作。處理過(guò)程名:課程查詢輸入數(shù)據(jù)流:學(xué)號(hào)、姓名輸出數(shù)據(jù)流:學(xué)號(hào)、班級(jí)名稱、課程名稱、上課時(shí)間節(jié)、上課時(shí)間天、上課地點(diǎn)、其中課程編號(hào)將存在整個(gè)操作。處理過(guò)程名:成績(jī)輸入輸入數(shù)據(jù)流:課程編號(hào)、課程名稱輸出數(shù)據(jù)流:編號(hào)、學(xué)號(hào)、課程名稱、成績(jī) 、其中編號(hào)和學(xué)號(hào)將存在整個(gè)操作。 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)
30、 根據(jù)需求分析階段得到的功能需求,管理員、學(xué)生和教師用戶通過(guò)輸入口令號(hào)和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些學(xué)生基礎(chǔ)信息查詢(學(xué)生信息查詢、班級(jí)信息查詢、課程信息查詢)、學(xué)生信息維護(hù)、成績(jī)管理(成績(jī)查詢、計(jì)算平均分)重新登陸系統(tǒng)、退出。 模塊功能大概可以分為如下4個(gè)方面:這幾個(gè)模塊學(xué)生基礎(chǔ)維護(hù)、成績(jī)管理、登陸、退出。其中基礎(chǔ)維護(hù)還要包括學(xué)生信息維護(hù)、班級(jí)信息維護(hù)、課程信息維護(hù)。成績(jī)管理包括成績(jī)查詢、添加成績(jī)、成績(jī)輸入等。綜上所述,得到客戶端功能模塊圖如下2.1所示。學(xué)生成績(jī)管理系統(tǒng)成績(jī)輸入登陸成績(jī)查詢學(xué)生模塊管理員模塊成績(jī)修改成績(jī)添加成績(jī)查詢學(xué)生信息查詢學(xué)生信息維護(hù)學(xué)生基本信息退出退出成績(jī)管理重新登
31、陸系統(tǒng)設(shè)計(jì)(一)設(shè)計(jì)目標(biāo)通過(guò)對(duì)學(xué)生管理工作的調(diào)查和研究,要求系統(tǒng)設(shè)計(jì)完成后將達(dá)到以下目標(biāo):界面設(shè)計(jì)友好、美觀,方便管理員的日常操作?;拘畔⒌娜嬖O(shè)置,數(shù)據(jù)錄入方便、快捷。具有用戶維護(hù)功能。最大限度地實(shí)現(xiàn)了易維護(hù)性和易操作性。(二)開發(fā)及運(yùn)行環(huán)境硬件平臺(tái):CPU:P41.8GHz; 內(nèi)存:256MB以上。軟件平臺(tái):操作系統(tǒng):Windows2000 Server;數(shù)據(jù)庫(kù):SQL Server 2000;建立環(huán)境,這個(gè)過(guò)程如下:在 HYPERLINK :/java.sun /jdk/ t _blank 處下載JDK(Java2SDK、StandardEdition、v)。JDK的安裝是首先運(yùn)行下載
32、得到的jdk-6u5-windows-i586-p.exe,然后修改系統(tǒng)環(huán)境變量,新建JAVA_HOME=x:jdk6.0,并在PATH參數(shù)中加入%JAVA_HOME%bin;,其中x:是安裝JDK的硬盤符(c:、d:等)。在h6.0。tomcat的安裝僅需將apache-tomcat-.zip帶目錄釋放到硬盤根目錄下(c:、d:等),然后就可以在硬盤上找到apache-tomcat-5.5.26目錄。啟動(dòng)則在apache-tomcat-/bin目錄下執(zhí)行startup.bat,就可啟動(dòng)tomcat中一個(gè)支持JSP網(wǎng)頁(yè)技術(shù)的Web服務(wù)器。為了不與現(xiàn)有的Web服務(wù)器(例如IIS、PWS等)沖突,
33、tomcat的Web服務(wù)器使用了8080端口。在瀏覽器的地址欄中鍵入 HYPERLINK :/localhost:8080/ t _blank :/localhost:8080或者 HYPERLINK :/:8080/ t _blank :/:8080后,如果能看到tomcat的歡迎頁(yè)就說(shuō)明JSP實(shí)驗(yàn)環(huán)境已經(jīng)建成,可進(jìn)入下一步實(shí)驗(yàn)。要關(guān)閉Web服務(wù)器則運(yùn)行shutdown.bat。(三)數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)連接對(duì)動(dòng)態(tài)網(wǎng)站來(lái)說(shuō)是最為重要的部分,從JSP中訪問(wèn)數(shù)據(jù)通常是通過(guò)Java Bean來(lái)實(shí)現(xiàn)的。Java中連接數(shù)據(jù)庫(kù)的技術(shù)是JDBC(Java Dat
34、abase Connectivity)。很多數(shù)據(jù)庫(kù)系統(tǒng)帶有JDBC驅(qū)動(dòng)程序,Java程序就通過(guò)JDBC驅(qū)動(dòng)程序與數(shù)據(jù)庫(kù)相連,執(zhí)行查詢、提取數(shù)據(jù)等等操作。Sun公司還開發(fā)了JDBC-ODBC bridge,用此技術(shù)Java程序就可以訪問(wèn)帶有ODBC驅(qū)動(dòng)程序的數(shù)據(jù)庫(kù),目前大多數(shù)數(shù)據(jù)庫(kù)系統(tǒng)都帶有ODBC驅(qū)動(dòng)程序,所以Java程序能訪問(wèn)諸如Oracle、Sybase、MSSQL Server和MS Access等數(shù)據(jù)庫(kù)。JavaBeanJavaBeans 是基于java的組件模型,由屬性,方法和事件3個(gè)部分組成。在該模型中,Javabeans可以被修改或與其他組件結(jié)合生成新組件或完成的程序。它是一種J
35、ava類,通過(guò)封裝成為具有某種功能或者處理某個(gè)業(yè)務(wù)的對(duì)象。因此,也可以通過(guò)嵌在 JSP頁(yè)面內(nèi)的Java代碼訪問(wèn)Bean及其方法。Bean的含義是可重復(fù)使用的Java組件。所謂組件就是一個(gè)由可以自行進(jìn)行內(nèi)部管理的一個(gè)或幾個(gè)類所組成,外界了解其內(nèi)部信息和運(yùn)行方式的群體。使用它的對(duì)象只能通過(guò)接口來(lái)操作。Bean實(shí)際上是根據(jù)JavaBeans技術(shù)標(biāo)準(zhǔn)所指定的Bean的命名和設(shè)計(jì)規(guī)范而編寫的Java類。Bean并不需要繼承特別的基類(base class)或事項(xiàng)特定的接口(Interface)。JavaBeans1.01-A規(guī)范定義了該組件的5種重要的機(jī)制:內(nèi)?。↖ntrospection):組件可發(fā)表
36、其支持的操作和屬性,同時(shí)也支持在其他組件中發(fā)現(xiàn)重復(fù)利用的對(duì)象庫(kù),例如用戶權(quán)限和電子自動(dòng)回復(fù)等。通信(Communication):生成和收集組件的消息事件持續(xù)(Persistence):存放組件的狀態(tài)。屬性(Properties):支持組件布局的控制,包括組件占用的空間和組件的相對(duì)位置。定制(Customization):開發(fā)者可控制組件所需的改變機(jī)制。Javabeans可實(shí)現(xiàn)在設(shè)計(jì)平臺(tái)被規(guī)定的操作,一般可表示為簡(jiǎn)單的圖形界面,如按鈕,光標(biāo)和菜單等,也可以是不可見的接受并處理事件的操作,如數(shù)據(jù)庫(kù)連接Bean。JSP吸引人之處很大程度上在于它使用了Javabeans組件技術(shù),但JSP中只支持不可
37、見的Javabeans。jdbc創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)連接Bean需要5個(gè)步驟:導(dǎo)入JDBC標(biāo)準(zhǔn)類庫(kù),注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,建立數(shù)據(jù)庫(kù)連接,數(shù)據(jù)庫(kù)操作和關(guān)閉。1)導(dǎo)入JDBC標(biāo)準(zhǔn)類庫(kù)JDBC(Java DataBase Connectivity, Java數(shù)據(jù)庫(kù)連接)是一種可用于執(zhí)行SQL(Structured Query Language ,結(jié)構(gòu)化查詢語(yǔ)言)語(yǔ)句的應(yīng)用程序接口,為了將服務(wù)器從客戶端接受信息存入數(shù)據(jù)庫(kù),需要使用JDBC標(biāo)準(zhǔn)類庫(kù),所以需要在程序的開始加入以下import語(yǔ)句:Import java.sql.*;2)注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序在一個(gè)JDBC的驅(qū)動(dòng)程序被用來(lái)建立數(shù)據(jù)庫(kù)連接之前,必
38、須向數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序管理器注冊(cè)該驅(qū)動(dòng)程序。管理器的主要職責(zé)是保證所有的驅(qū)動(dòng)程序?qū)ο罂杀籎DBC的用戶程序訪問(wèn)。當(dāng)一個(gè)JDBC驅(qū)動(dòng)程序被載入時(shí),它將自動(dòng)地在驅(qū)動(dòng)程序管理器上注冊(cè)??梢哉{(diào)用Class.forName()方法載入一個(gè)JDBC驅(qū)動(dòng)程序:String strDBDriver=sun.jdbc.odbc.JdbcOdbcDriver;Class.forName(“strDBDriver ”); Class.forName()是Java的Class類的靜態(tài)方法,它使Java虛擬機(jī)動(dòng)態(tài)的尋找,載入并連接指定的類。3)建立數(shù)據(jù)庫(kù)連接載入一個(gè)正確的驅(qū)動(dòng)程序后,就可以用它來(lái)建立與數(shù)據(jù)庫(kù)的連接了。一個(gè)J
39、DBC的數(shù)據(jù)庫(kù)連接是用數(shù)據(jù)庫(kù)URL來(lái)標(biāo)記的。連接標(biāo)記將告訴驅(qū)動(dòng)程序管理器使用哪個(gè)驅(qū)動(dòng)程序和連接哪個(gè)數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)URL的基本形式:jdbc::URL的第一部分表示使用JDBC建立數(shù)據(jù)庫(kù)連接。第2部分表示所使用的JDBC驅(qū)動(dòng)程序名或網(wǎng)絡(luò)協(xié)議名。第3部分是數(shù)據(jù)源標(biāo)記,它映射所需連接的數(shù)據(jù)庫(kù)。例如數(shù)據(jù)庫(kù)的數(shù)據(jù)源標(biāo)記是firm則同JDBC-ODBC橋連接該數(shù)據(jù)庫(kù)所用的數(shù)據(jù)庫(kù)URL為jdbc:odbc:firm.可以通過(guò)DriverManager類的靜態(tài)方法getConnection()來(lái)建立一個(gè)數(shù)據(jù)庫(kù)連接:String strDBUrl=jdbc:odbc:firm;conn=DriverManage
40、r.getConnection(strDBUrl,sa,);一旦建立數(shù)據(jù)庫(kù)連接,就可以打開該目標(biāo)數(shù)據(jù)庫(kù),并通過(guò)該連接向目標(biāo)數(shù)據(jù)庫(kù)SQL指令。SQL指令通常會(huì)執(zhí)行查詢,插入,更新和刪除等數(shù)據(jù)庫(kù)操作。要執(zhí)行SQL指令,必須通過(guò)Connection對(duì)象的createStatement()方法來(lái)創(chuàng)建一個(gè)STMT對(duì)象。STMT對(duì)象提供了許動(dòng)方法來(lái)執(zhí)行不同的數(shù)據(jù)庫(kù)操作。可以 通過(guò)以下方式創(chuàng)建STMT對(duì)象:private Connection conn=null;private Statement stmt=null;ResultSet rs=null;stmt=conn.createStatement()
41、;4)數(shù)據(jù)操作與數(shù)據(jù)庫(kù)建立了連接后,接著就要進(jìn)行數(shù)據(jù)操作了。數(shù)據(jù)操作包括查詢,插入,更新和刪除等操作。要對(duì)數(shù)據(jù)庫(kù)精心操作可以使用STMT對(duì)象的executeQuery()方法。executeQuery()方法接受一個(gè)SQL指令字符串作為參數(shù),返回結(jié)果信息是ResultSet對(duì)象。具體如下:rs=stmt.executeQuery(sql);5)關(guān)閉因?yàn)閿?shù)據(jù)庫(kù)連接是寶貴和有限的資源,因此必須在數(shù)據(jù)庫(kù)操作完畢后即使釋放數(shù)據(jù)庫(kù)連接。Connection 對(duì)象提供了一個(gè)簡(jiǎn)單的關(guān)閉數(shù)據(jù)庫(kù)連接的方法 close()。例如:conn.close();stmt.close。利用數(shù)據(jù)庫(kù)原理相關(guān)知識(shí),對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)
42、和每個(gè)模塊、每個(gè)界面的具體設(shè)計(jì)。此系統(tǒng)采用的數(shù)據(jù)庫(kù)軟件是sqldb。以下是系統(tǒng)需要的六張主要數(shù)據(jù)表的結(jié)構(gòu)。字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementcodevarchar(100)年級(jí)代碼namevarchar(200)年級(jí)名稱School_grade年級(jí)字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementcodevarchar(100)班級(jí)代碼namevarchar(200)班級(jí)名稱school_gradebigint所在年級(jí)school_gradeSchool_class班級(jí)字段名字段類型nulldefault描
43、述主鍵外鍵idbigint主鍵incrementcodevarchar(50)課程編碼namevarchar(200)課程名稱credit_hourfloat學(xué)分passfloat及格線school_gradebigint所在學(xué)期school_gradeLesson課程字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementusernamevarchar(200)用戶名passwordvarchar(200)密碼truenamevarchar(200)真實(shí)姓名sexinteger性別school_classbigint所在班級(jí)school_classStudent
44、學(xué)生字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementscorefloat成績(jī)studentbigint用戶studentlessonbigint課程lessonScore成績(jī)字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementusernamevarchar(200)用戶名passwordvarchar(200)密碼Admin管理員系統(tǒng)的實(shí)現(xiàn)(一)學(xué)生查詢成績(jī)部分訪問(wèn) HYPERLINK :/localhost:8080/studentscope/ :/localhost:8080/ST/。測(cè)試用戶名:test測(cè)試密碼:te
45、st學(xué)生需要先登錄才能進(jìn)入查詢程序的界面, 進(jìn)入系統(tǒng)前要對(duì)用戶和密碼進(jìn)行校驗(yàn),即用戶名和密碼正確才能進(jìn)入系統(tǒng)。并且若用戶連續(xù)三次密碼輸入錯(cuò)誤,則不能再次輸入。輸入用戶ID后,按鍵,系統(tǒng)校驗(yàn)該用戶是否存在.在公共方法jTuser_keyPressed()中,定義一個(gè)String類型變量sqlSelect用來(lái)生成SQL查詢語(yǔ)句,再定義一個(gè)公共類 PetrieveObject類型變量 retrieve,然后調(diào)用retrieve的getObjectRow()方法,其參數(shù)為sqlSelect,用來(lái)判斷該用戶是否存在。如果用戶名與密碼不正確,就會(huì)彈出警告信息,要求用戶重新輸入。登錄成功后就可以看到登錄學(xué)生
46、的個(gè)人信息和相關(guān)學(xué)科的分?jǐn)?shù)。后臺(tái)管理成績(jī)部分訪問(wèn) HYPERLINK :/localhost:8080/st,進(jìn)入后臺(tái)管理界面。測(cè)試管理員帳號(hào):admin測(cè)試密碼:admin輸入用戶ID之后,按鍵,系統(tǒng)校驗(yàn)該用戶是否存在。在公共方法jTuser_keyPressed()中,定義一個(gè)String類型變量sqlSelect用來(lái)生成SQL查詢語(yǔ)句,再定義一個(gè)公共類RetrieveObject類型變量retrieve,然后調(diào)用retrieve的getObjectRow()方法,其參數(shù)為sqlSelect,用來(lái)判斷該用戶是否存在。該方法的詳細(xì)代碼如下:Public void jTextField1_ke
47、yPressed(KeyEvent keyEvent)If(keyEvent.getKeyCode()=KeyEvent.VK_ENTER) String sqlSelect=null; Java.util.Vector vdata=null; sqlSelect=”select username from tb_user where userid=”+jTextField1.getText().trim()+”; appstu.util.RetrieveObject retrieve=new appstu.util.RetrieveObject(); vdata=retrieve.getOb
48、jectRow(sqlSelect); if (vdata.size()0) jPasswordField1.requestFocus();else Javax.swing.JOptionPane.showMessageDialog(null,”該用戶不存在”,”錯(cuò)誤” ,javax.swing.JOptionPane.ERROR_MESSAGE); jTextField1.requestFocus(); 如果用戶存在,再輸入對(duì)應(yīng)的口令,輸入的口令正確時(shí),單擊“登錄”按鈕,進(jìn)入系統(tǒng)。公共方法jTuser_keyPressed()的設(shè)計(jì)與jTextField1_keyPressed的設(shè)計(jì)方法相似
49、,其關(guān)鍵代碼如下:Public void jBlogin_actionPerformed(ActionEvent e) String sqlSelect=null; sqlSelect=”select count(*)from tb_user where userid=”+jTextField1.getText().trim() +”and pass=”+pass+”; Java.util.Vector vdata=null; appstu.util.RetrieveObject retrieve=new appstu.util.RetrieveObject(); vdata=retrieve
50、.getObjectRow(sqlSelect); (vdata.get(0)0) AppMain frame=new AppMain(); This.setVisible(false);else J.JOptionPane.showMessageDialog(null,”密碼錯(cuò)誤”,”錯(cuò)誤”,J); jPasswordField1.requestFocus(); return; 登錄成功可以選擇功能模塊進(jìn)行操作。其中包括有年級(jí)班級(jí)管理模塊、課程管理模塊、學(xué)生管理模塊、系統(tǒng)管理模塊。這些模塊都只有管理人員才能使用。管理年級(jí)信息,年級(jí)管理模塊可以添加、修改、刪除各年級(jí)的ID、年級(jí)編碼及年級(jí)名稱。
51、管理班級(jí)信息,班級(jí)信息設(shè)置用來(lái)維護(hù)班級(jí)的基本情況,包括對(duì)班級(jí)信息的添加、修改和刪除等操作。通過(guò)調(diào)用Jdbcadapter,完成對(duì)班級(jí)表的相應(yīng)操作。執(zhí)行該模塊程序,首先從數(shù)據(jù)表中檢索出班級(jí)的基本信息,如果存在數(shù)據(jù)用戶單擊某一條數(shù)據(jù)之后可以對(duì)其進(jìn)行修改、刪除等操作。單擊jf_view_sysset_class.java 文件的source代碼,編輯窗口首先導(dǎo)入U(xiǎn)TIL公共包下的相應(yīng)類文件;定義一個(gè)BOOLEAN實(shí)例變量INSERTFLAG,用來(lái)標(biāo)志操作數(shù)據(jù)庫(kù)的類型,然后定義一個(gè)私有方法BUILDTABLE(),用來(lái)檢索班級(jí)數(shù)據(jù)。代碼如下:private void buildTable() Defa
52、ultTableModel=null; String name =“班級(jí)編號(hào)”,”年級(jí)編號(hào)”,”班級(jí)名稱”; String sqlstr=”select*from tb_classinfo”; Appstu.util.retrieveObject bdt=new appstu.util.RetrieveObject(); Tabemodel=bdt.getTableModel(name,sqlstr);jTable.setModel(tablemodel);jTable.setRowHeight(24); 單擊“新增”按鈕,用來(lái)增加一條新的數(shù)據(jù)信息。在公共方法jBadd_actionPerfo
53、rmed()中定義局部字符串變量sqlgrade,用來(lái)生成年級(jí)sql的查詢語(yǔ)句,然后調(diào)用公共類RetrieveObject的getObjectRow()方法,其參數(shù)為sqlgrade,將返回結(jié)果數(shù)據(jù)解析后添加到j(luò)ComboBox1組件中。其jBadd_actionPerformed()方法的代碼如下: Public void jBadd_actionPerformed(ActionEvent e)/獲得年級(jí)名稱/if(jComboBox1.getItemCount()=0)Insertflag=true;RetrieveObject bdt=new RetrieveObject();Strin
54、g sqlgrade=”select gradeName from tb_gradeinfo”;Java.util.Vector vdata=new java.util.Vector();Vdata=bdt.getObjectRow(sqlgrade);jComboBox1.removeAllItems();for (int i=0;ivdata.size();i+) jComboBox1.addItem(vdata.get(i);ItemEvent item=new ItemEvent(jComboBox1,0,jComboBox1,jComboBox1.getSelectedIndex()
55、;jComboBox1_itemStateChanged(item);jTextField2.setText(“”);jTextField2.requestFocus();用戶單擊表格上的某條數(shù)據(jù)后,程序會(huì)將這條數(shù)據(jù)填寫到j(luò)Panel2面板上的相應(yīng)組件上,以方便用戶進(jìn)行相應(yīng)的操作,在公共方法jTable1_mouseClicked()中定義一個(gè)string類型的局部變量sqlStr,用來(lái)生成sql查詢語(yǔ)句,然后調(diào)用公共類RetrieveObject的getObjectPow()方法,進(jìn)行數(shù)據(jù)查詢,如果找到數(shù)據(jù)則將該數(shù)據(jù)解析顯示給用戶,代碼如下:Public void jTable1_mouse
56、Clicked(MouseEvent e) Insertflag=false; String id=null; String sqlStr=null; Int selectrow=0; Selectrow=jTable1.getSelectedRow(); If(selectrow0)return; Id=jTable1.getValueAt(selectrow,0).toSwing(); sqlStr=”SELECT c.classID,d.gradeName FROM tb_classinfo c INNER JOIN” +” + “where c.classID=”+id+”; Java
57、.util.Vector vdata=null; RetrieveObject retrive=new RetrieveObject(); Vdata=retrive.getObjectRow(sqlStr); jComboBox1.removeAllItems(); jTextField1.setText(vdata.get(0).toString(); jComboBox1.addItem(vdata.get(1); jTextField2.setText(vdata.get(2).toString(); 管理課程信息,課程管理模塊可增加、修改、刪除學(xué)院各班級(jí)開設(shè)的課程數(shù)據(jù),包括課程的ID
58、、課程代碼、課程名稱、課程學(xué)分、該課程的及格分?jǐn)?shù)線及開設(shè)該課程的年級(jí)信息。評(píng)分模塊主要是給學(xué)習(xí)某一課程的學(xué)生評(píng)分,通過(guò)選擇課程的名稱,可錄入、修改、刪除和查看學(xué)習(xí)該門課程所有學(xué)生的成績(jī)。this.tbar = new Ext.Toolbar(選擇課程:, filter, -, id: addMenu, text: 添加, iconCls : add, tooltip : 添加, disabled: true, handler: function() if (this.filter.getValue() = ) Ext.Msg.alert(提示, 請(qǐng)先選擇課程); else var initVa
59、lue = id: null, student.truename: null, student.id: null, score: 0 ; var p = new this.dataRecord(initValue); this.stopEditing(); this.store.insert(0, p); this.startEditing(0, 0); p.dirty = true; p.modified = initValue; if(this.store.modified.indexOf(p) = -1) this.store.modified.push(p); if (this.ins
60、ertedRecords.indexOf(p) = -1) this.insertedRecords.push(p); .createDelegate(this) , id: deleteMenu, text: 刪除, iconCls : delete, tooltip : 刪除, disabled: true, handler: function() if (this.filter.getValue() = ) Ext.Msg.alert(提示, 請(qǐng)先選擇課程); else Ext.Msg.confirm(信息, 確定要?jiǎng)h除?, function(btn) if (btn = yes) va
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 內(nèi)蒙古自治區(qū)錫林郭勒盟三縣聯(lián)考2024-2025學(xué)年八年級(jí)上學(xué)期1月期末物理試題(無(wú)答案)
- 保安員競(jìng)賽理論知識(shí)考試試題題庫(kù)及答案
- 2025年度廠房租賃合同書(含環(huán)保驗(yàn)收條款)3篇
- 【產(chǎn)業(yè)圖譜】2024年江陰市重點(diǎn)產(chǎn)業(yè)規(guī)劃布局全景圖譜(附產(chǎn)業(yè)現(xiàn)狀、產(chǎn)業(yè)布局、產(chǎn)業(yè)發(fā)展規(guī)劃等)
- 2024小班幼兒的評(píng)語(yǔ)(33篇)
- 2024版期貨融資居間合同協(xié)議范本
- 2024鐵精粉倉(cāng)儲(chǔ)物流服務(wù)合同樣本3篇
- 福建省南平市九三英華高級(jí)中學(xué)高一化學(xué)模擬試卷含解析
- 2025年度存量房租賃市場(chǎng)調(diào)控合作協(xié)議3篇
- 2024版安全生產(chǎn)與環(huán)境保護(hù)綜合管理協(xié)議
- 超市安全生產(chǎn)教育培訓(xùn)計(jì)劃
- 電氣安全的技術(shù)措施和組織措施參考
- 國(guó)際結(jié)算英文選擇題附答案
- 20以內(nèi)加減法口算題(10000道)(A4直接打印-每頁(yè)100題)
- 結(jié)售匯統(tǒng)計(jì)培訓(xùn)課件
- 精神病健康教育知識(shí)宣傳
- 咸寧職業(yè)技術(shù)學(xué)院學(xué)生實(shí)習(xí)鑒定表
- 工程技術(shù)資料管理方案
- 三年級(jí)上冊(cè)語(yǔ)文第27課《一個(gè)粗瓷大碗》同步練習(xí)(含答案)
- 河南省駐馬店市重點(diǎn)中學(xué)2023-2024學(xué)年九年級(jí)上學(xué)期12月月考語(yǔ)文試題(無(wú)答案)
- 咨詢服務(wù)協(xié)議書范本(完整版)
評(píng)論
0/150
提交評(píng)論