版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)THE DESIGNANDREALIZATION OFTHE RESULT OF STUDENTADMINISTRATION MANAGEMENT SYSTEM目 錄摘要摘要 3 3一、一、開發(fā)平臺(tái)與工具簡(jiǎn)介開發(fā)平臺(tái)與工具簡(jiǎn)介 5 5 二、系統(tǒng)分析二、系統(tǒng)分析 7 7( (一一) )學(xué)生成績(jī)管理系統(tǒng)概述學(xué)生成績(jī)管理系統(tǒng)概述 7 7( (二二) ) 需求分析需求分析 .8 81 1) 功能需求分析功能需求分析 .8 82 2)性能需性能需求求分析分析 9 93 3)數(shù)據(jù)庫需求分析)數(shù)據(jù)庫需求分析數(shù)據(jù)流圖數(shù)據(jù)流圖 9 94 4)數(shù)據(jù)結(jié)構(gòu)分析數(shù)據(jù)結(jié)構(gòu)分析數(shù)據(jù)流圖數(shù)據(jù)流圖
2、1010( (三三) )系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì) 1212三、三、系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì) 1313( (一一) )設(shè)計(jì)目標(biāo)設(shè)計(jì)目標(biāo) 1313( (二二) )開發(fā)與運(yùn)行環(huán)境開發(fā)與運(yùn)行環(huán)境 1313( (三三) )數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì) 1414四、系統(tǒng)的實(shí)現(xiàn)四、系統(tǒng)的實(shí)現(xiàn) 1717( (一一) )學(xué)生查詢成績(jī)部分學(xué)生查詢成績(jī)部分 1717( (二二) )后臺(tái)管理成績(jī)部分后臺(tái)管理成績(jī)部分 1919 登陸模塊登陸模塊 1919 年紀(jì)班級(jí)管理模塊年紀(jì)班級(jí)管理模塊 2020 課程管理模塊課程管理模塊 2424 評(píng)分模塊評(píng)分模塊 2424 學(xué)生信息管理模塊學(xué)生信息管理模塊 2727 管理員模塊管理員模塊
3、2929五、系統(tǒng)存在的問題與前景展望五、系統(tǒng)存在的問題與前景展望 3030 ( (一一) )系統(tǒng)存在問題系統(tǒng)存在問題 3030 ( (二二) )前景展望前景展望 3030 . 2 / 32參考文獻(xiàn)參考文獻(xiàn) 3131摘要摘要隨著現(xiàn)代計(jì)算機(jī)科學(xué)的發(fā)展,計(jì)算機(jī)信息系統(tǒng)越來越受到重視,網(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ù)庫的建立和系統(tǒng)模塊功能的實(shí)現(xiàn),并在最后說明了系統(tǒng)存在問題和前景展望。關(guān)鍵詞:關(guān)鍵詞:javajava,S
4、QLSQL ,TOMCATTOMCAT,學(xué)生成績(jī)管理 . 3 / 32AbstractAbstractAlong 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 systemsthat based on network platform
5、,the B/S system already became one kind 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
6、system, in order to amelioratebetter in the future.Keywords:Keywords: java,java, SQL,SQL, TOMCAT,StudentTOMCAT,Student scorescore managementmanagement . 4 / 32一、一、開發(fā)平臺(tái)與工具簡(jiǎn)介開發(fā)平臺(tái)與工具簡(jiǎn)介1、Java 概述 Java 包括 Java 編程語言、開發(fā)工具和環(huán)境、Java 類庫等。Java 語言是美國(guó) SUN 公司開發(fā)的一種完全面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。Java 語言由 C+語言發(fā)展而來,但比 C+語言簡(jiǎn)單。Java 語言具有簡(jiǎn)
7、單、與平臺(tái)無關(guān)、高效、健壯、安全、多線程等特點(diǎn),它是當(dāng)前網(wǎng)絡(luò)編程中的首選語言。JDK 提供了 Java 程序的編譯和運(yùn)行方式,并且編譯和運(yùn)行都是命令行方式。JDK 本身沒有提供源程序編輯環(huán)境,沒有提供可視化的集成開發(fā)環(huán)境(Integrated Development Environment,IDE) 。有一些其他 Java 開發(fā)工具提供集成開發(fā)環(huán)境,如 Eclipse、JCreator、uilder 等,它們都是建立在 JDK的運(yùn)行時(shí)環(huán)境之上的。 Java 是一門編譯語言(compiled language),但它不直接生成硬件處理器指令,而是生成一種字節(jié)碼(bytecodes)這種字節(jié)碼由
8、Java 虛擬機(jī)解釋執(zhí)行。 Java 虛擬機(jī)(Java Virtual Machine,JVM)實(shí)際上是一個(gè)程序,它定義了指令集、寄存器集、類文件結(jié)構(gòu)棧、垃圾收集堆、存區(qū)域等,提供了跨平臺(tái)能力的基礎(chǔ)框架。Java 虛擬機(jī)實(shí)現(xiàn)了一臺(tái)理想的計(jì)算機(jī),并可以優(yōu)化運(yùn)行 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ù)庫管理系統(tǒng)的最新版本該
9、版本繼承了 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ù)器等多種平臺(tái)使用。它的優(yōu)點(diǎn)有: 1)上手容易,學(xué)習(xí) SQL Server 是掌握其他平臺(tái)與大型數(shù)據(jù),如Oracle,Sybase,DB/2 的基礎(chǔ)。因?yàn)檫@些大型數(shù)據(jù)庫對(duì)于設(shè)備、平臺(tái)、人員知識(shí)的要求往往較高,而并不是每個(gè)人都具備這樣的條件,且有機(jī)會(huì)去接觸它們。但有了 SQL Server 的基礎(chǔ),再去學(xué)習(xí)和使用它們就容易多了。
10、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)的功能。尤其 . 5 / 32是它可以直接存貯 XML 數(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)相對(duì)于 7.0 的憂越性,Microsoft SQL Server 2000 是在 SQL Server 7.0
11、 的基礎(chǔ)上對(duì)性能、可靠性、質(zhì)量以與易用性進(jìn)行了擴(kuò)展。SQL Server 2000 中包含許多新特性,這些特性使其成為針對(duì)電子商務(wù)、數(shù)據(jù)倉庫和在線商務(wù)解決方案的卓越的數(shù)據(jù)庫平臺(tái)。其增強(qiáng)的特性包括對(duì)豐富的擴(kuò)展標(biāo)記語言(XML)的支持、綜合分析服務(wù)以與便捷的數(shù)據(jù)庫管理。4)電子商務(wù),在使用由 Microsoft SQL Server 2000 關(guān)系數(shù)據(jù)庫引擎的情況下,XML 數(shù)據(jù)可在關(guān)系表中進(jìn)行存儲(chǔ),而查詢則能以 XML 格式將有關(guān)結(jié)果返回。此外,XML 支持還簡(jiǎn)化了后端系統(tǒng)集成,并實(shí)現(xiàn)了跨防火墻的無縫數(shù)據(jù)傳輸。你還可以使用 Hypertext Transfer Protocol(超文本傳輸協(xié)議,
12、 )來訪問 SQL Server 2000,以實(shí)現(xiàn)面向 SQL Server 2000 數(shù)據(jù)庫的安全 Web連接和無須額外編程的聯(lián)機(jī)分析處理(OLAP)多維數(shù)據(jù)集。5)數(shù)據(jù)倉庫,Microsoft SQL Server 2000 非常明顯的改進(jìn)就是增加了OLAP(聯(lián)機(jī)分析處理)功能,這可以讓很多中小企業(yè)用戶也可以使用數(shù)據(jù)倉庫的一些特性進(jìn)行分析。OLAP 可以通過多維存儲(chǔ)技術(shù)對(duì)大型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級(jí)的分析工作。數(shù)據(jù)挖掘功能能夠揭示出隱藏在大量數(shù)據(jù)中的傾向與趨勢(shì),它允許組織或機(jī)構(gòu)最大限度的從數(shù)據(jù)中獲取價(jià)值。通過對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行有效分析,這一功能可以對(duì)未來的趨勢(shì)進(jìn)行預(yù)測(cè)。6)增強(qiáng)的在線商務(wù),M
13、icrosoft SQL Server 2000 簡(jiǎn)化了管理、優(yōu)化工作,并且增強(qiáng)了迅速、成功的部署在線商務(wù)應(yīng)用程序所需的可靠性和伸縮性。其中,用以提高可靠性的特性包括日志傳送、在線備份和故障切換群集。在伸縮性方面的改進(jìn)包括對(duì)多達(dá) 32 顆 CPU 和 64 GB RAM 的支持。通過自動(dòng)優(yōu)化和改進(jìn)后的管理特性-諸如數(shù)據(jù)文件尺寸的自動(dòng)管理、基于向?qū)У臄?shù)據(jù)庫拷貝、自動(dòng)存管理和簡(jiǎn)化的故障切換群集安裝與管理,在線商務(wù)應(yīng)用程序能夠被迅速部署并有效管理。7)利于構(gòu)筑敏捷性商務(wù),所謂敏捷性商務(wù) 就是能夠打破部和外部的商業(yè)界限,對(duì)迅速改變的環(huán)境做出快速反應(yīng)。 。微軟已經(jīng)與關(guān)鍵的合作伙伴建立起了戰(zhàn)略關(guān)系,創(chuàng)造出
14、了能夠與許多供應(yīng)商的產(chǎn)品實(shí)現(xiàn)整合的解決方案,因而企業(yè)用戶并不需要做出要么完全接受,要么全部不要的承諾。在部署解決方案的過程中,企業(yè)用戶不一定要拆除原有的設(shè)備從頭。敏捷商務(wù)讓企業(yè)用戶能夠充分利用現(xiàn)有的系統(tǒng),自主決定所需的硬件和軟件解決方案以與由誰來提供,伸縮自如、游刃有余。3、TOMCAT 簡(jiǎn)介Tomcat 是一個(gè)帶有 jsp 環(huán)境的 servlet 容器.servlet 容器是一個(gè)根據(jù)用戶的行為可以管理和激活 servlet 的運(yùn)行時(shí)的 shell.啟動(dòng)與關(guān)閉 Tomcat,使用”bin”目錄中的腳本啟動(dòng)與關(guān)閉 Tomcat. 啟動(dòng):uinx:bin/startup.sh ,win32:bin
15、startup 。關(guān)閉: unix:bin/shutdown.sh ,win32:binshutdown 。Tomcat 目錄結(jié)構(gòu) ,目錄名-描述: bin 包含啟動(dòng)/關(guān)閉腳本 ;conf 包含不同的配置文件, 包括 server.xml(Tomcat 的主要配置文件)和為不同的 . 6 / 32Tomcat 配置的 web 應(yīng)用設(shè)置缺省值的文件 web.xml ;doc 包含各種 Tomcat文檔 ;lib 包含 Tomcat 使用的 jar 文件.unix 平臺(tái)此目錄下的任何文件都被加到 Tomcat 的 classpath 中 ;logs Tomcat 擺放日志文件的地方 ;src Se
16、rvletAPI 源文件.先別高興,這些只有些必須在 Servlet 容器實(shí)現(xiàn)的空接口和抽象類 ;webapps 包含 web 項(xiàng)目示例 ,此外 Tomcat 會(huì)創(chuàng)建如下目錄: work ,Tomcat 自動(dòng)生成,放置 Tomcat 運(yùn)行時(shí)的臨時(shí)文件(如編譯后的 JSP 文件).如在 Tomcat 運(yùn)行時(shí)刪除此目錄.JSP 頁面將不能運(yùn)行;classes 可以創(chuàng)建此目錄來添加一些附加的類到類路徑中.任何加到此目錄中的類都可在 Tomcat的類路徑中找到自身. Tomcat 的腳本 ,Tomcat 是一個(gè) Java 程序,因此在設(shè)置好幾個(gè)環(huán)境變量后即可用命令行的方式運(yùn)行.然而設(shè)置 Tomcat
17、使用的每個(gè)環(huán)境變量和如下的命令行參數(shù)乏味且易錯(cuò).因此,Tomcat 開發(fā)組提供了一些腳本使啟動(dòng)和關(guān)閉Tomcat 變得輕松. 二、二、系統(tǒng)分析系統(tǒng)分析( (一一) )學(xué)生成績(jī)管理系統(tǒng)概述學(xué)生成績(jī)管理系統(tǒng)概述1)學(xué)生成績(jī)管理系統(tǒng)的發(fā)展背景學(xué)生成績(jī)管理是各大學(xué)的主要日常管理工作之一,涉與到校、系、師、生的諸多方面,隨著教學(xué)體制的不斷改革,尤其是學(xué)分制、選課制的展開和深入,學(xué)生成績(jī)?nèi)粘9芾砉ぷ髋c保存管理日趨繁重、復(fù)雜。迫切需要研制開發(fā)一款功能強(qiáng)大,操作簡(jiǎn)單,具有人性化的學(xué)生成績(jī)管理系統(tǒng)。目前研究的現(xiàn)狀在安全性和信息更新化方面存在有一定的不足,各現(xiàn)有系統(tǒng)資料單獨(dú)建立,共享性差;在以管理者為主體的方式中
18、,信息取舍依賴管理者對(duì)于信息的認(rèn)知與喜好,較不容易掌握用戶真正的需求,也因此無法完全滿足用戶的需求。因此,教務(wù)管理軟件應(yīng)充分依托校園網(wǎng),實(shí)現(xiàn)教務(wù)信息的集中管理、分散操作、信息共享,使傳統(tǒng)的教務(wù)管理朝數(shù)字化、無紙化、智能化、綜合化的方向發(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)用在全球圍日益普與,在眾多的網(wǎng)絡(luò)服務(wù)中,Web 給人耳目一新的感覺,而在這其中,網(wǎng)絡(luò)已經(jīng)日漸普與,任何人可以在網(wǎng)絡(luò)所提供的平臺(tái)上進(jìn)行自由的交流,通過網(wǎng)絡(luò),學(xué)生可以通過在線的網(wǎng)絡(luò)直接查詢程序,而學(xué)校教師也可在網(wǎng)上在線管理學(xué)生
19、的成績(jī),不需要再去貼成績(jī)單,使用了在線電子系統(tǒng),既便于數(shù)據(jù)查詢不容易使數(shù)據(jù)丟失,又省去了印刷貼的麻煩,可謂一舉兩得。B/S 系統(tǒng)得益于網(wǎng)絡(luò)的興起,采用瀏覽器作為前端用戶操作的平臺(tái),所有的操作系統(tǒng)都預(yù)裝了網(wǎng)絡(luò)瀏覽器,比如 IE,用戶不用再去費(fèi)心安裝每個(gè)系統(tǒng)的客戶端就可以通過瀏覽器訪問服務(wù)器上架設(shè)的系統(tǒng)只是隨著網(wǎng)絡(luò)的發(fā)展,人們不再局限于只查看文字信息圖片這些靜態(tài)信息, . 7 / 32對(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)的 R
20、IA 富客戶端開發(fā)的,它包括學(xué)生查詢平臺(tái)和后臺(tái)管理平臺(tái)兩部分,分別為學(xué)生提供成績(jī)查詢功能,為老師提供管理學(xué)生成績(jī)的功能。2)方案論證 成績(jī)管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)以與前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。本系統(tǒng)主要完成對(duì)學(xué)生成績(jī)的管理,包括數(shù)據(jù)庫中表的添加、修改、刪除等。系統(tǒng)還可以完成對(duì)各類信息的瀏覽、查詢、添加、刪除、修改等功能。3) 開發(fā)工具的選擇本系統(tǒng)開發(fā)工具:JDK Version1.5+ SQL SERVER 2000( (二二) )需求
21、分析需求分析1) 功能需求分析 該學(xué)生成績(jī)管理系統(tǒng)具備三方面的功能:一方面是學(xué)生用戶,學(xué)生通過輸入學(xué)號(hào)和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些基礎(chǔ)查詢(學(xué)生信息查詢、班級(jí)信息查詢、課程信息查詢) 、成績(jī)管理(成績(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é)生信息
22、查詢菜單命令,即可進(jìn)入學(xué)生信息查詢功能窗體,在其中的下拉列表中選擇你要看的信息,則在下面的表格中顯示你要的信息。3 選擇成績(jī)管理 添加成績(jī)菜單命令,即可進(jìn)入 添加成績(jī)功能窗體,此功能權(quán)限只有管理員和教師。4 選擇成績(jī)管理 輸入成績(jī)菜單命令,即可進(jìn)入 輸入成績(jī)功能窗體,此功能權(quán)限只有管理員和教師。 . 8 / 325 選擇成績(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)槭怯?/p>
23、 uilder 做的,它占用存比較大,更新處理時(shí)間比較快而且迅速。安全性:設(shè)立口令號(hào)和密碼驗(yàn)證方式,防止非法用戶登錄進(jìn)行操作。也就是用戶只有管理員、學(xué)生和教師才能進(jìn)入這個(gè)系統(tǒng),用戶憑口令號(hào)和密碼進(jìn)入此系統(tǒng),系統(tǒng)會(huì)自動(dòng)判斷用戶是那種類型,分別擁有不同的權(quán)限。3) 數(shù)據(jù)庫需求分析數(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) 、
24、性別(sex)課程信息:包括課程編號(hào)(course_id)、課程名稱(coursename)(name)、成績(jī)(result) 成績(jī)表:編號(hào)(number)、學(xué)號(hào)(id)、課程名稱(coursename)、成績(jī)(result)班級(jí)信息:班級(jí)編號(hào)(bh)、學(xué)號(hào)(id)、(name)、班級(jí)名稱(bjmc)。登陸表:口令號(hào)(id)、密碼(password)。根據(jù)以上劃分的具體數(shù)據(jù)信息,得到數(shù)據(jù)流圖如 1.1 所示:1.1 數(shù)據(jù)庫需求分析數(shù)據(jù)流圖4)數(shù)據(jù)結(jié)構(gòu)分析學(xué)生信息=組成: 學(xué)號(hào)(id)、(name)、班級(jí)(class)、性別(sex)、地址用 戶登 錄操 作登陸信息錯(cuò)誤信息返回信息尋找信息數(shù) 據(jù)
25、 庫 . 9 / 32(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)(id)、課程名稱(coursename)、成績(jī)(result)、教師(teacher) 課程信息包括=組成:課程編號(hào)(course_id)、課程名稱(coursename)、教師(teacher)班級(jí)信息=組成:班級(jí)編號(hào)(bh)
26、、年級(jí)(nj)、班級(jí)名稱(bjmc)、人數(shù)(rs)、班主任(bzr)登陸表=組成:口令號(hào)(id)、密碼(password)、權(quán)限(rightlimit)1 1、對(duì)圖、對(duì)圖 1.11.1 中所涉與的數(shù)據(jù)流描述如下:中所涉與的數(shù)據(jù)流描述如下:1) 數(shù)據(jù)流名:口令號(hào)說明:根據(jù)這個(gè)口令號(hào)定位到用戶管理數(shù)據(jù)庫,以便進(jìn)行身份驗(yàn)證。數(shù)據(jù)流來源:登陸界面輸入的口令號(hào)和密碼。數(shù)據(jù)流去向:其中用戶口令信息將存在于整個(gè)操作過程中,防止非法登陸。數(shù)據(jù)流組成:口令號(hào)(文本) ;密碼(文本)2) 數(shù)據(jù)流名:尋找信息說明:根據(jù)用戶在學(xué)生信息維護(hù)的時(shí)候所填寫的信息。數(shù)據(jù)流來源:學(xué)生信息維護(hù)界面學(xué)生輸入包含學(xué)號(hào)、班級(jí)編號(hào)、名稱
27、等。數(shù)據(jù)流去向:學(xué)號(hào)將存在整個(gè)操作,其它的存入數(shù)據(jù)庫。數(shù)據(jù)流組成:學(xué)號(hào)(文本) ;(文本)等3) 數(shù)據(jù)流名:尋找信息說明:根據(jù)用戶在成績(jī)管理的時(shí)候所填寫的信息。數(shù)據(jù)流來源:成績(jī)輸入、修改、添加等界面用戶輸入包含課程編號(hào)、課程名稱、成績(jī)、教師。數(shù)據(jù)流去向:學(xué)號(hào)、班級(jí)編號(hào)、課程編號(hào)將存在整個(gè)操作,其它的存入數(shù) . 10 / 32據(jù)庫。數(shù)據(jù)流組成:課程編號(hào)(文本) 、課程名稱(文本) 、教師(文本)等。4) 數(shù)據(jù)流名:返回信息說明:根據(jù)用戶在學(xué)生信息維護(hù)的時(shí)候所填寫的信息存入了數(shù)據(jù)庫之后。數(shù)據(jù)流來源:由學(xué)生信息維護(hù)界面學(xué)生輸入的包含學(xué)號(hào)、 、性別等存入數(shù)據(jù)庫的。數(shù)據(jù)流去向:學(xué)生信息維護(hù)界面。數(shù)據(jù)流組
28、成:學(xué)號(hào)(文本) 、 (文本) 、班級(jí)名稱(文本) 、性別(文本)等。5) 數(shù)據(jù)流名:返回信息說明:根據(jù)用戶在成績(jī)管理的時(shí)候所填寫的信息存入數(shù)據(jù)庫后。數(shù)據(jù)流來源:由成績(jī)管理輸入的包含班級(jí)名稱、教師、課程名、成績(jī)存入數(shù)據(jù)庫的。數(shù)據(jù)流去向:成績(jī)管理的各子界面。數(shù)據(jù)流組成:班級(jí)編號(hào)(文本) ;班級(jí)名稱(文本) ;教師(文本)等2.2. 對(duì)圖對(duì)圖 1.11.1 中所涉與的處理過程描述如下:中所涉與的處理過程描述如下:1)處理過程名:登陸輸入數(shù)據(jù)流:口令號(hào)、密碼輸出數(shù)據(jù)流:不符合輸入條件的錯(cuò)誤信息 處理過程邏輯:用 IF 條件進(jìn)行判斷。2)處理過程名:班級(jí)信息維護(hù)輸入數(shù)據(jù)流:班級(jí)編號(hào)、班級(jí)名稱、教師等輸
29、出數(shù)據(jù)流:班級(jí)編號(hào)、班級(jí)名稱等 ,其中班級(jí)編號(hào)將存在整個(gè)操作。處理過程號(hào):班級(jí)編號(hào),其中班級(jí)編號(hào)將存在整個(gè)操作。3)處理過程名:學(xué)生信息維護(hù)輸入數(shù)據(jù)流:學(xué)號(hào)、 、班級(jí)編號(hào)、性別等。輸出數(shù)據(jù)流:學(xué)號(hào)、 、班級(jí)編號(hào)、性別等。其中學(xué)號(hào)將存在整個(gè)操作。 . 11 / 324)處理過程名:課程查詢輸入數(shù)據(jù)流:學(xué)號(hào)、輸出數(shù)據(jù)流:學(xué)號(hào)、班級(jí)名稱、課程名稱、上課時(shí)間節(jié)、上課時(shí)間天、上課地點(diǎn)、其中課程編號(hào)將存在整個(gè)操作。5)處理過程名:成績(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ì)系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)根據(jù)需求分析階段得到的功能需
30、求,管理員、學(xué)生和教師用戶通過輸入口令號(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) . 12 / 32成績(jī)管理重新登陸三、系統(tǒng)設(shè)計(jì)(一)設(shè)計(jì)目標(biāo)(一)設(shè)計(jì)目標(biāo)通過對(duì)學(xué)生管理工作的調(diào)查和研究,要求系統(tǒng)設(shè)計(jì)完成后將達(dá)到以下目標(biāo)
31、:界面設(shè)計(jì)友好、美觀,方便管理員的日常操作?;拘畔⒌娜嬖O(shè)置,數(shù)據(jù)錄入方便、快捷。具有用戶維護(hù)功能。最大限度地實(shí)現(xiàn)了易維護(hù)性和易操作性。(二)開發(fā)與運(yùn)行環(huán)境(二)開發(fā)與運(yùn)行環(huán)境硬件平臺(tái):CPU:P41.8GHz; 存:256MB 以上。軟件平臺(tái):操作系統(tǒng):Windows2000 Server;數(shù)據(jù)庫:SQL Server 2000;開發(fā)工具包:JDK Version1.5建立環(huán)境,這個(gè)過程如下:在 java.sun./jdk/處下載 JDK(Java2SDK、StandardEdition、v6.0)。JDK 的安裝是首先運(yùn)行下載得到的 jdk-6u5-windows-i586-p.exe,
32、然后修改系統(tǒng)環(huán)管理員模塊學(xué)生基本信息登陸退出學(xué)生信息維護(hù)學(xué)生信息查詢成績(jī)查詢成績(jī)修改成績(jī)輸入圖 2.1 客戶模塊系統(tǒng)功能模塊圖退出成績(jī)添加學(xué)生模塊成績(jī)查詢 . 13 / 32境變量,新建 JAVA_HOME=x:jdk6.0,并在 PATH 參數(shù)中加入%JAVA_HOME%bin;,其中x:是安裝 JDK 的硬盤符(c:、d:等) 。在 /處下載 Tomcat6.0。tomcat 的安裝僅需將 apache-tomcat-5.5.26.zip 帶目錄釋放到硬盤根目錄下(c:、d:等) ,然后就可以在硬盤上找到 apache-tomcat-5.5.26 目錄。
33、啟動(dòng)則在 apache-tomcat-5.5.26/bin 目錄下執(zhí)行 startup.bat,就可啟動(dòng)tomcat 中一個(gè)支持 JSP 網(wǎng)頁技術(shù)的 Web 服務(wù)器。為了不與現(xiàn)有的 Web 服務(wù)器(例如 IIS、PWS 等)沖突,tomcat 的 Web 服務(wù)器使用了 8080 端口。在瀏覽器的地址欄中鍵入 localhost:8080 或者 :8080 后,如果能看到 tomcat 的歡迎頁就說明 JSP 實(shí)驗(yàn)環(huán)境已經(jīng)建成,可進(jìn)入下一步實(shí)驗(yàn)。要關(guān)閉 Web 服務(wù)器則運(yùn)行 shutdown.bat。(三)數(shù)據(jù)庫設(shè)計(jì)(三)數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫連接數(shù)據(jù)庫連接對(duì)動(dòng)態(tài)來說是最為重要的部分
34、,從 JSP 中訪問數(shù)據(jù)通常是通過 Java Bean 來實(shí)現(xiàn)的。Java 中連接數(shù)據(jù)庫的技術(shù)是JDBC(JavaDatabaseConnectivity)。很多數(shù)據(jù)庫系統(tǒng)帶有 JDBC 驅(qū)動(dòng)程序,Java程序就通過 JDBC 驅(qū)動(dòng)程序與數(shù)據(jù)庫相連,執(zhí)行查詢、提取數(shù)據(jù)等等操作。Sun公司還開發(fā)了 JDBC-ODBCbridge,用此技術(shù) Java 程序就可以訪問帶有 ODBC 驅(qū)動(dòng)程序的數(shù)據(jù)庫,目前大多數(shù)數(shù)據(jù)庫系統(tǒng)都帶有 ODBC 驅(qū)動(dòng)程序,所以 Java 程序能訪問諸如 Oracle、Sybase、MSSQLServer 和 MSAccess 等數(shù)據(jù)庫。1JavaBeanJavaBeans
35、是基于 java 的組件模型,由屬性,方法和事件 3 個(gè)部分組成。在該模型中,Javabeans 可以被修改或與其他組件結(jié)合生成新組件或完成的程序。它是一種 Java 類,通過封裝成為具有某種功能或者處理某個(gè)業(yè)務(wù)的對(duì)象。因此,也可以通過嵌在 JSP 頁面的 Java 代碼訪問 Bean 與其方法。Bean 的含義是可重復(fù)使用的 Java 組件。所謂組件就是一個(gè)由可以自行進(jìn)行部管理的一個(gè)或幾個(gè)類所組成,外界了解其部信息和運(yùn)行方式的群體。使用它的對(duì)象只能通過接口來操作。Bean 實(shí)際上是根據(jù) JavaBeans 技術(shù)標(biāo)準(zhǔn)所指定的 Bean 的命名和設(shè)計(jì)規(guī)而編寫的 Java 類。Bean 并不需要繼
36、承特別的基類(base class)或事項(xiàng)特定的接口(Interface) 。JavaBeans1.01-A 規(guī)定義了該組件的 5 種重要的機(jī)制:1) 省(Introspection):組件可發(fā)表其支持的操作和屬性,同時(shí)也支持在其他組件中發(fā)現(xiàn)重復(fù)利用的對(duì)象庫,例如用戶權(quán)限和電子自動(dòng)回復(fù)等。2) 通信(Communication):生成和收集組件的消息事件3) 持續(xù)(Persistence):存放組件的狀態(tài)。4) 屬性(Properties):支持組件布局的控制,包括組件占用的空間和組件的相對(duì)位置。5) 定制(Customization):開發(fā)者可控制組件所需的改變機(jī)制。6)Javabeans
37、可實(shí)現(xiàn)在設(shè)計(jì)平臺(tái)被規(guī)定的操作,一般可表示為簡(jiǎn)單的圖形界面,如按鈕,光標(biāo)和菜單等,也可以是不可見的接受并處理事件的操作,如數(shù) . 14 / 32據(jù)庫連接 Bean。JSP 吸引人之處很大程度上在于它使用了 Javabeans 組件技術(shù),但 JSP 中只支持不可見的 Javabeans。2jdbc創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫連接 Bean 需要 5 個(gè)步驟:導(dǎo)入 JDBC 標(biāo)準(zhǔn)類庫,注冊(cè)數(shù)據(jù)庫驅(qū)動(dòng)程序,建立數(shù)據(jù)庫連接,數(shù)據(jù)庫操作和關(guān)閉。1)導(dǎo)入 JDBC 標(biāo)準(zhǔn)類庫JDBC(Java DataBase Connectivity, Java 數(shù)據(jù)庫連接)是一種可用于執(zhí)行 SQL(Structured Quer
38、y Language ,結(jié)構(gòu)化查詢語言)語句的應(yīng)用程序接口,為了將服務(wù)器從客戶端接受信息存入數(shù)據(jù)庫,需要使用 JDBC 標(biāo)準(zhǔn)類庫,所以需要在程序的開始加入以下 import 語句:Import java.sql.*;2)注冊(cè)數(shù)據(jù)庫驅(qū)動(dòng)程序在一個(gè) JDBC 的驅(qū)動(dòng)程序被用來建立數(shù)據(jù)庫連接之前,必須向數(shù)據(jù)庫驅(qū)動(dòng)程序管理器注冊(cè)該驅(qū)動(dòng)程序。管理器的主要職責(zé)是保證所有的驅(qū)動(dòng)程序?qū)ο罂杀籎DBC 的用戶程序訪問。當(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.jdb
39、c.odbc.JdbcOdbcDriver;Class.forName(“strDBDriver”); Class.forName()是 Java 的 Class 類的靜態(tài)方法,它使 Java 虛擬機(jī)動(dòng)態(tài)的尋找,載入并連接指定的類。一個(gè) JDBC 的驅(qū)動(dòng)程序就是一個(gè)可以通過 classpath 找到一個(gè) Java 類。這里載入的 JDBC_ODBC 橋驅(qū)動(dòng)程序就在 sun.jdbc.odbc 包中3)建立數(shù)據(jù)庫連接載入一個(gè)正確的驅(qū)動(dòng)程序后,就可以用它來建立與數(shù)據(jù)庫的連接了。一個(gè)JDBC 的數(shù)據(jù)庫連接是用數(shù)據(jù)庫 URL 來標(biāo)記的。連接標(biāo)記將告訴驅(qū)動(dòng)程序管理器使用哪個(gè)驅(qū)動(dòng)程序和連接哪個(gè)數(shù)據(jù)庫。數(shù)據(jù)
40、庫 URL 的基本形式:jdbc::URL 的第一部分表示使用 JDBC 建立數(shù)據(jù)庫連接。第 2 部分表示所使用的JDBC 驅(qū)動(dòng)程序名或網(wǎng)絡(luò)協(xié)議名。第 3 部分是數(shù)據(jù)源標(biāo)記,它映射所需連接的數(shù)據(jù)庫。例如數(shù)據(jù)庫的數(shù)據(jù)源標(biāo)記是 firm 則同 JDBC-ODBC 橋連接該數(shù)據(jù)庫所用的數(shù)據(jù)庫 URL 為 jdbc:odbc:firm.可以通過 DriverManager 類的靜態(tài)方法 getConnection()來建立一個(gè)數(shù)據(jù)庫連接:String strDBUrl=jdbc:odbc:firm;conn=DriverManager.getConnection(strDBUrl,sa,);一旦建立數(shù)
41、據(jù)庫連接,就可以打開該目標(biāo)數(shù)據(jù)庫,并通過該連接向目標(biāo)數(shù)據(jù)庫 SQL 指令。SQL 指令通常會(huì)執(zhí)行查詢,插入,更新和刪除等數(shù)據(jù)庫操作。要執(zhí)行 SQL 指令,必須通過 Connection 對(duì)象的 createStatement()方法來創(chuàng)建一個(gè) STMT 對(duì)象。STMT 對(duì)象提供了許動(dòng)方法來執(zhí)行不同的數(shù)據(jù)庫操作??梢?通過以下方式創(chuàng)建 STMT 對(duì)象: . 15 / 32private Connection conn=null;private Statement stmt=null;ResultSet rs=null;stmt=conn.createStatement();4)數(shù)據(jù)操作與數(shù)據(jù)庫建
42、立了連接后,接著就要進(jìn)行數(shù)據(jù)操作了。數(shù)據(jù)操作包括查詢,插入,更新和刪除等操作。要對(duì)數(shù)據(jù)庫精心操作可以使用 STMT 對(duì)象的executeQuery()方法。executeQuery()方法接受一個(gè) SQL 指令字符串作為參數(shù),返回結(jié)果信息是 ResultSet 對(duì)象。具體如下:rs=stmt.executeQuery(sql);5)關(guān)閉因?yàn)閿?shù)據(jù)庫連接是寶貴和有限的資源,因此必須在數(shù)據(jù)庫操作完畢后即使釋放數(shù)據(jù)庫連接。Connection 對(duì)象提供了一個(gè)簡(jiǎn)單的關(guān)閉數(shù)據(jù)庫連接的方法 close()。例如:conn.close();stmt.close。利用數(shù)據(jù)庫原理相關(guān)知識(shí),對(duì)數(shù)據(jù)庫設(shè)計(jì)和每個(gè)模塊、
43、每個(gè)界面的具體設(shè)計(jì)。此系統(tǒng)采用的數(shù)據(jù)庫軟件是 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描述主鍵外
44、鍵idbigint主鍵incrementcodevarchar(50)課程編碼namevarchar(200)課程名稱credit_hourfloat學(xué)分passfloat與格線school_gradebigint所在學(xué)期school_gradeLesson 課程 . 16 / 32字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementusernamevarchar(200)用戶名passwordvarchar(200)密碼truenamevarchar(200)真實(shí)sexinteger性別school_classbigint所在班級(jí)school_classSt
45、udent 學(xué)生字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementscorefloat成績(jī)studentbigint用戶studentlessonbigint課程lessonScore 成績(jī)字段名字段類型nulldefault描述主鍵外鍵idbigint主鍵incrementusernamevarchar(200)用戶名passwordvarchar(200)密碼Admin 管理員四、系統(tǒng)的實(shí)現(xiàn)(一)學(xué)生查詢成績(jī)部分學(xué)生查詢成績(jī)部分訪問 localhost:8080/ST/index.html。測(cè)試用戶名:test測(cè)試密碼:test學(xué)生需要先登錄才能進(jìn)入查詢
46、程序的界面, 進(jìn)入系統(tǒng)前要對(duì)用戶和密碼進(jìn)行校驗(yàn),即用戶名和密碼正確才能進(jìn)入系統(tǒng)。并且若用戶連續(xù)三次密碼輸入錯(cuò)誤,則不能再次輸入。 . 17 / 32輸入用戶 ID 后,按鍵,系統(tǒng)校驗(yàn)該用戶是否存在.在公共方法jTuser_keyPressed()中,定義一個(gè) String 類型變量 sqlSelect 用來生成 SQL 查詢語句,再定義一個(gè)公共類 PetrieveObject 類型變量 retrieve,然后調(diào)用retrieve 的 getObjectRow()方法,其參數(shù)為 sqlSelect,用來判斷該用戶是否存在。如果用戶名與密碼不正確,就會(huì)彈出警告信息,要求用戶重新輸入。 . 18 /
47、 32登錄成功后就可以看到登錄學(xué)生的個(gè)人信息和相關(guān)學(xué)科的分?jǐn)?shù)。 . 19 / 32(二)(二)后臺(tái)管理成績(jī)部分后臺(tái)管理成績(jī)部分訪問 localhost:8080/st/admin.html,進(jìn)入后臺(tái)管理界面。測(cè)試管理員:admin測(cè)試密碼:admin輸入用戶 ID 之后,按鍵,系統(tǒng)校驗(yàn)該用戶是否存在。在公共方法jTuser_keyPressed()中,定義一個(gè) String 類型變量 sqlSelect 用來生成 SQL查詢語句,再定義一個(gè)公共類 RetrieveObject 類型變量 retrieve,然后調(diào)用retrieve 的 getObjectRow()方法,其參數(shù)為 sqlSelec
48、t,用來判斷該用戶是否存在。該方法的詳細(xì)代碼如下:Public void jTextField1_keyPressed(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=ne
49、w appstu.util.RetrieveObject(); vdata=retrieve.getObjectRow(sqlSelect); if (vdata.size()0) . 20 / 32 jPasswordField1.requestFocus();elseJavax.swing.JOptionPane.showMessageDialog(null,”該用戶不存在”,”錯(cuò)誤” ,javax.swing.JOptionPane.ERROR_MESSAGE); jTextField1.requestFocus(); 如果用戶存在,再輸入對(duì)應(yīng)的口令,輸入的口令正確時(shí),單擊“登錄”按鈕,
50、進(jìn)入系統(tǒng)。公共方法 jTuser_keyPressed()的設(shè)計(jì)與jTextField1_keyPressed 的設(shè)計(jì)方法相似,其關(guān)鍵代碼如下:Public void login_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.Retrie
51、veObject retrieve=new appstu.util.RetrieveObject(); vdata=retrieve.getObjectRow(sqlSelect); if(Integer.parseInt(String.valueOf(vdata.get(0)0) AppMain frame=new AppMain();This.setVisible(false);elseJavax.swing.JOptionPane.showMessageDialog(null,”密碼錯(cuò)誤”,”錯(cuò)誤”,Javax.swing.JOptionPane.ERROR_MESSAGE); jPas
52、swordField1.requestFocus(); return; 登錄成功可以選擇功能模塊進(jìn)行操作。其中包括有年級(jí)班級(jí)管理模塊、課程管理模塊、學(xué)生管理模塊、系統(tǒng)管理模塊。這些模塊都只有管理人員才能使用。 . 21 / 32管理年級(jí)信息,年級(jí)管理模塊可以添加、修改、刪除各年級(jí)的 ID、年級(jí)編碼與年級(jí)名稱。 . 22 / 32管理班級(jí)信息,班級(jí)信息設(shè)置用來維護(hù)班級(jí)的基本情況,包括對(duì)班級(jí)信息的添加、修改和刪除等操作。通過調(diào)用 Jdbcadapter,完成對(duì)班級(jí)表的相應(yīng)操作。執(zhí)行該模塊程序,首先從數(shù)據(jù)表中檢索出班級(jí)的基本信息,如果存在數(shù)據(jù)用戶單擊某一條數(shù)據(jù)之后可以對(duì)其進(jìn)行修改、刪除等操作。單擊
53、jf_view_sysset_class.java 文件的source 代碼,編輯窗口首先導(dǎo)入 UTIL 公共包下的相應(yīng)類文件;定義一個(gè)BOOLEAN 實(shí)例變量 INSERTFLAG,用來標(biāo)志操作數(shù)據(jù)庫的類型,然后定義一個(gè)私有方法 BUILDTABLE() ,用來檢索班級(jí)數(shù)據(jù)。代碼如下:private void buildTable() DefaultTableModel=null;String name =“班級(jí)編號(hào)”,”年級(jí)編號(hào)”,”班級(jí)名稱”;String sqlstr=”select*from tb_classinfo”;Appstu.util.retrieveObject bdt=n
54、ew appstu.util.RetrieveObject();Tabemodel=bdt.getTableModel(name,sqlstr);jTable.setModel(tablemodel);jTable.setRowHeight(24); 單擊“新增”按鈕,用來增加一條新的數(shù)據(jù)信息。在公共方法add_actionPerformed()中定義局部字符串變量 sqlgrade,用來生成年級(jí) sql 的查詢語句,然后調(diào)用公共類 RetrieveObject 的 getObjectRow()方法,其參數(shù)為 sqlgrade,將返回結(jié)果數(shù)據(jù)解析后添加到 jComboBox1 組件中。其add
55、_actionPerformed()方法的代碼如下:Public void add_actionPerformed(ActionEvent e)/獲得年級(jí)名稱/if(jComboBox1.getItemCount()=0)Insertflag=true;RetrieveObject bdt=new RetrieveObject();String sqlgrade=”select gradeName from tb_gradeinfo”;Java.util.Vector vdata=new java.util.Vector();Vdata=bdt.getObjectRow(sqlgrade);j
56、ComboBox1.removeAllItems();for (int i=0;ivdata.size();i+) jComboBox1.addItem(vdata.get(i);ItemEvent item=new ItemEvent(jComboBox1,0,jComboBox1,jComboBox1.getSelectedIndex();jComboBox1_itemStateChanged(item);jTextField2.setText(“”);jTextField2.requestFocus();用戶單擊表格上的某條數(shù)據(jù)后,程序會(huì)將這條數(shù)據(jù)填寫到 jPanel2 面板上 . 23
57、 / 32的相應(yīng)組件上,以方便用戶進(jìn)行相應(yīng)的操作,在公共方法jTable1_mouseClicked()中定義一個(gè) string 類型的局部變量 sqlStr,用來生成sql 查詢語句,然后調(diào)用公共類 RetrieveObject 的 getObjectPow()方法,進(jìn)行數(shù)據(jù)查詢,如果找到數(shù)據(jù)則將該數(shù)據(jù)解析顯示給用戶,代碼如下:Public void jTable1_mouseClicked(MouseEvent e)Insertflag=false; String id=null; String sqlStr=null;Int selectrow=0;Selectrow=jTable1.g
58、etSelectedRow();If(selectrow0)return;Id=jTable1.getValueAt(selectrow,0).toSwing(); sqlStr=”SELECT c.classID,d.gradeName FROM tb_classinfo c INNER JOIN” +”tb_gradeinfo d ON c.gradeID=d.gradeID” + “where c.classID=” +id+” ”;Java.util.Vector vdata=null; RetrieveObject retrive=new RetrieveObject();Vdata
59、=retrive.getObjectRow(sqlStr); jComboBox1.removeAllItems(); jTextField1.setText(vdata.get(0).toString(); jComboBox1.addItem(vdata.get(1); jTextField2.setText(vdata.get(2).toString(); . 24 / 32管理課程信息,課程管理模塊可增加、修改、刪除學(xué)院各班級(jí)開設(shè)的課程數(shù)據(jù),包括課程的 ID、課程代碼、課程名稱、課程學(xué)分、該課程的與格分?jǐn)?shù)線與開設(shè)該課程的年級(jí)信息。 . 25 / 32評(píng)分模塊主要是給學(xué)習(xí)某一課程的學(xué)生評(píng)
60、分,通過選擇課程的名稱,可錄入、修改、刪除和查看學(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 initValue = id: null, student.truename: null, student.id: nul
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年公共設(shè)施窗簾清洗消毒服務(wù)合同范本3篇
- 2024版汽車檢測(cè)臺(tái)租賃合同
- 2024石材外墻干掛勞務(wù)服務(wù)合同標(biāo)準(zhǔn)版6篇
- 2025年度特色飲品店門面房租賃及新品研發(fā)合同3篇
- 2025年度圓形冷卻塔能源管理服務(wù)合同4篇
- 2024版基礎(chǔ)建設(shè)融資借款協(xié)議模板版
- 2025年度水電工程質(zhì)保期服務(wù)合同4篇
- 2025年度學(xué)校圖書館窗簾升級(jí)改造合同4篇
- 2025年度生態(tài)修復(fù)工程承包樹木合同協(xié)議書4篇
- 2024石材行業(yè)品牌推廣與營(yíng)銷合同3篇
- 領(lǐng)導(dǎo)溝通的藝術(shù)
- 發(fā)生用藥錯(cuò)誤應(yīng)急預(yù)案
- 南潯至臨安公路(南潯至練市段)公路工程環(huán)境影響報(bào)告
- 綠色貸款培訓(xùn)課件
- 大學(xué)生預(yù)征對(duì)象登記表(樣表)
- 主管部門審核意見三篇
- 初中數(shù)學(xué)校本教材(完整版)
- 父母教育方式對(duì)幼兒社會(huì)性發(fā)展影響的研究
- 新課標(biāo)人教版數(shù)學(xué)三年級(jí)上冊(cè)第八單元《分?jǐn)?shù)的初步認(rèn)識(shí)》教材解讀
- (人教版2019)數(shù)學(xué)必修第一冊(cè) 第三章 函數(shù)的概念與性質(zhì) 復(fù)習(xí)課件
- 重慶市銅梁區(qū)2024屆數(shù)學(xué)八上期末檢測(cè)試題含解析
評(píng)論
0/150
提交評(píng)論