版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、廣東海洋大學(xué)本科生課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)開(kāi)發(fā)文檔目目 錄錄1.1. 學(xué)生信息管理系統(tǒng)概述學(xué)生信息管理系統(tǒng)概述.11.1 研究背景.1.2 開(kāi)發(fā)意義.2.2. 系統(tǒng)需系統(tǒng)需求求分析分析.2.1 開(kāi)發(fā)環(huán)境和軟件.2.2 系統(tǒng)設(shè)計(jì)與功能分析.3 3 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì).3.1 系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì).3.2 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì).3.3 數(shù)據(jù)庫(kù)實(shí)現(xiàn).3.3.1 數(shù)據(jù)庫(kù)關(guān)系圖.3.3.2 sql 語(yǔ)句實(shí)現(xiàn).4.4. 系統(tǒng)模塊詳細(xì)設(shè)計(jì)系統(tǒng)模塊詳細(xì)設(shè)計(jì).4.1用戶(hù)登錄模塊.4.2 各用戶(hù)操作模塊.4.2.1 管理員操作模塊.4.2.2 教師操作模塊.4.2.3 學(xué)生操作模塊.5.5. 系統(tǒng)運(yùn)行與測(cè)試系統(tǒng)運(yùn)行與測(cè)
2、試.5.1 管理員登錄.5.2 教師登錄.5.3 學(xué)生登錄.6 6課程設(shè)計(jì)總結(jié)課程設(shè)計(jì)總結(jié).7附錄(代碼)附錄(代碼).廣東海洋大學(xué)本科生課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)信管 1081 班,200811622124,吳曉陽(yáng)指導(dǎo)教師:鄭贊紅 1.1. 學(xué)生信息管理系統(tǒng)概述學(xué)生信息管理系統(tǒng)概述1.1 研究背景學(xué)生信息管理系統(tǒng)是學(xué)校管理的重要工具,是學(xué)校不可或缺的部分。 隨著在校大學(xué)生人數(shù)的不斷增加,教務(wù)系統(tǒng)的數(shù)量也不斷的上漲, 。學(xué)校工作繁雜、資料眾多,人工管理信息的難度也越來(lái)越大,顯然是不能滿(mǎn)足實(shí)際的需要,效率也是很低的。并且這種傳統(tǒng)的方式存在著很多的弊端,如:保密性差、查詢(xún)不便、效率低,很難維護(hù)和更新
3、等。然而,本系統(tǒng)針對(duì)以上缺點(diǎn)能夠極大地提高學(xué)生信息管理的效率,也是科學(xué)化、正規(guī)化的管理,與世界接軌的重要條件。所以如何自動(dòng)高效地管理信息是這些年來(lái)許多人所研究的。 1.2 開(kāi)發(fā)意義隨著這些年電腦計(jì)算機(jī)的速度質(zhì)的提高,成本的下降,it 互聯(lián)網(wǎng)大眾趨勢(shì)的發(fā)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。 學(xué)生學(xué)籍管理系統(tǒng)的出現(xiàn),正是管理人員與信息數(shù)據(jù),計(jì)算機(jī)的進(jìn)入互動(dòng)時(shí)代的體現(xiàn)。友好的人機(jī)交互模式,清晰簡(jiǎn)明的圖形界面,高效安全的操作使得我們對(duì)成千上萬(wàn)的信息的管理得心應(yīng)手。通過(guò)這個(gè)廣東海洋大學(xué)本科生課程設(shè)計(jì)系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速的查詢(xún),從而減少管理方面的工作量毋庸置疑,切實(shí)有效
4、地把計(jì)算機(jī)管理引入學(xué)校教務(wù)管理中,對(duì)于促進(jìn)學(xué)校管理制度,提高學(xué)校教學(xué)質(zhì)量與辦學(xué)水平有著顯著意義2.2. 系統(tǒng)需求分析系統(tǒng)需求分析 2.1 開(kāi)發(fā)環(huán)境和軟件(1) 操作系統(tǒng):windows 7 (2) 數(shù)據(jù)庫(kù)軟件:sql server 2005 (3) java 開(kāi)發(fā)工具:eclipse 2.2 系統(tǒng)設(shè)計(jì)與功能分析 學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢(xún),更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用 java 語(yǔ)言編寫(xiě),用sqlserver2005 數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用 sql 語(yǔ)句完成學(xué)生學(xué)籍信息的添加,查詢(xún),修改,刪除的操作以及成績(jī)的錄入,修改
5、,刪除等。用 odbc驅(qū)動(dòng)實(shí)現(xiàn)前臺(tái) java 與后臺(tái) sql 數(shù)據(jù)庫(kù)的連接。java 語(yǔ)言跨平臺(tái)性強(qiáng),可以在windows,linux,ubuntu 等系統(tǒng)下使用,方便簡(jiǎn)單,安全性好。sqlserver2005 數(shù)據(jù)庫(kù)高效安全,兩者結(jié)合可相互利用各自的優(yōu)勢(shì)。該系統(tǒng)實(shí)現(xiàn)的大致功能:1用戶(hù)登陸界面。該界面可以選擇使用者的身份, “管理員,教師,學(xué)生” 。不同的身份有不同的操作界面和功能權(quán)限。id 號(hào)和密碼輸入正確即可登錄。學(xué)生管理界面。提供了學(xué)生學(xué)籍信息的查詢(xún),相關(guān)科目的成績(jī)查詢(xún)和排名,修改登錄密碼等功能。2教師管理界面。提供了對(duì)學(xué)生學(xué)籍信息的查詢(xún),添加,修改,刪除;學(xué)生成績(jī)的錄入,修改,刪除,查
6、詢(xún)班級(jí)排名。修改密碼等功能。3管理員管理界面。擁有最高的權(quán)限。允許添加教師信息和課程信息等。廣東海洋大學(xué)本科生課程設(shè)計(jì)4登錄的用戶(hù)信息分別存儲(chǔ)在 sql 數(shù)據(jù)庫(kù)的“管理員信息表” , “教師信息表” , “學(xué)籍信息表”中,如果用戶(hù)信息不存在則三張表中,將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。保證了本學(xué)生管理系統(tǒng)的安全性。3 3數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)3.1 系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì) 教師教師 id教師姓名登錄密碼課程課程號(hào)教師 id課程名稱(chēng)成績(jī)學(xué)號(hào)課程號(hào)成績(jī)學(xué)籍性別姓名學(xué)號(hào)籍貫管理員登錄密碼管理員 id廣東海洋大學(xué)本科生課程設(shè)計(jì)實(shí)體屬性表:實(shí)體屬性表:實(shí)體屬性教師教師 id,教師姓名,登錄密碼課程課程號(hào),課程名稱(chēng),教師
7、 id管理員管理員 id,登錄密碼班級(jí)班級(jí)號(hào),班級(jí)名稱(chēng),總?cè)藬?shù)學(xué)籍學(xué)號(hào),姓名,性別,班級(jí)號(hào),籍貫,登錄密碼成績(jī)學(xué)號(hào),課程號(hào),成績(jī)3.2 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)教師信息表教師信息表: :字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件教師 id varchar(8)not null主鍵教師姓名varchar(8)not null登錄密碼varchar(8)not null課程信息表:課程信息表:字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件課程號(hào) varchar(8)not null主鍵課程名稱(chēng)varchar(12)not null教師 idvarchar(8)not null外鍵班級(jí)信息表:班級(jí)信息表
8、:字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件班級(jí)號(hào) varchar(8)not null主鍵班級(jí)號(hào)總?cè)藬?shù)登錄密碼籍貫班級(jí)名稱(chēng)班級(jí)號(hào)班級(jí)廣東海洋大學(xué)本科生課程設(shè)計(jì)班級(jí)名稱(chēng)varchar(8)not null所屬學(xué)院varchar(6)班級(jí)人數(shù)nchar(4)管理員信息表:管理員信息表:字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件管理員 id varchar(10)not null主鍵登錄密碼varchar(10)not null成績(jī)信息表:成績(jī)信息表:字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件班級(jí)號(hào) varchar(15)not null主鍵,外鍵班級(jí)名稱(chēng)varchar(8)not n
9、ull主鍵,外鍵所屬學(xué)院smallintnot null學(xué)籍信息表:學(xué)籍信息表:字段名字段名 類(lèi)型類(lèi)型空值空值約束條件約束條件學(xué)號(hào)int not null主鍵姓名varchar(30) not null性別char(2)班級(jí)號(hào)varchar(30) not null 外鍵籍貫char(10) 登錄密碼 moneynot null廣東海洋大學(xué)本科生課程設(shè)計(jì)3.3 數(shù)據(jù)庫(kù)實(shí)現(xiàn)3.3.1 數(shù)據(jù)庫(kù)關(guān)系圖3.3.2sql 語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)表的創(chuàng)建:(1)教師信息表創(chuàng)建:create table 教師信息表(教師id varchar(8) primary key ,教師姓名varchar(8) not nul
10、l unique,登錄密碼varchar(8) not null,)(2)課程信息表創(chuàng)建:create table 課程信息表(課程號(hào)varchar(8) primary key,課程名稱(chēng)varchar(12) not null,教師id varchar(8) not nullforeign key(教師id) references 教師信息表(教師id) )(3)班級(jí)信息表創(chuàng)建:create table 班級(jí)信息表(廣東海洋大學(xué)本科生課程設(shè)計(jì)班級(jí)號(hào)varchar(8) not null primary key,班級(jí)名稱(chēng)varchar(8) not null unique,所屬學(xué)院varcha
11、r(8) ,班級(jí)人數(shù) nchar(4) )(4)學(xué)籍信息表創(chuàng)建:create table 學(xué)籍信息表(學(xué)號(hào)varchar(15) primary key,姓名varchar(8) not null ,性別varchar(4) ,班級(jí)號(hào)varchar(8) not null ,籍貫varchar(5) ,登錄密碼varchar(6) not nullforeign key (班級(jí)號(hào)) references 班級(jí)信息表(班級(jí)號(hào))(5)成績(jī)信息表創(chuàng)建:create table 成績(jī)信息表(學(xué)號(hào)varchar(15),課程號(hào)varchar(8),成績(jī)smallint primary key(學(xué)號(hào),課程
12、號(hào))foreign key (學(xué)號(hào)) references 學(xué)籍信息表(學(xué)號(hào)),foreign key (課程號(hào)) references 課程信息表(課程號(hào)))(6)管理員信息表創(chuàng)建:create table 課程信息表(管理員id varchar(8) primary key,登錄密碼 varchar(12) not null)視圖的創(chuàng)建:(1)“教師課程詳細(xì)信息”視圖創(chuàng)建:create view 教師課程詳細(xì)信息asselect 教師信息表.教師id,教師信息表.教師姓名,課程信息表.課程號(hào),課程信息表.課程名稱(chēng),教師信息表.登錄密碼from 教師信息表join 課程信息表 on 教師信息
13、表.教師id =課程信息表.教師id(2) “學(xué)生成績(jī)信息”視圖創(chuàng)建:create view 學(xué)生成績(jī)信息asselect 學(xué)籍信息表.學(xué)號(hào),學(xué)籍信息表.姓名,學(xué)籍信息表.性別,廣東海洋大學(xué)本科生課程設(shè)計(jì)課程信息表.課程名稱(chēng),成績(jī)信息表.成績(jī)from 成績(jī)信息表join 學(xué)籍信息表 on 成績(jī)信息表.學(xué)號(hào) = 學(xué)籍信息表.學(xué)號(hào)join 班級(jí)信息表 on 班級(jí)信息表.班級(jí)號(hào) = 學(xué)籍信息表.班級(jí)號(hào)join 課程信息表 on 課程信息表.課程號(hào) = 成績(jī)信息表.課程號(hào)存儲(chǔ)過(guò)程創(chuàng)建:(1)“單科成績(jī)排名”創(chuàng)建: create proc dbo.單科成績(jī)排名kechenname char(8),cla
14、ssname char(8)asselect 學(xué)籍信息表.學(xué)號(hào),姓名,成績(jī) from 成績(jī)信息表 join 課程信息表on 課程信息表.課程號(hào)=成績(jī)信息表.課程號(hào) join 學(xué)籍信息表on 學(xué)籍信息表.學(xué)號(hào)=成績(jī)信息表.學(xué)號(hào)join 班級(jí)信息表on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào) where 課程名稱(chēng)=kechenname and 班級(jí)名稱(chēng)=classname order by 成績(jī)desc(2)“全班排名”創(chuàng)建:create proc dbo.全班排名class char(8)asselect 學(xué)籍信息表.學(xué)號(hào),姓名, avg(成績(jī)) as 平均分,sum(成績(jī)) as 總分 fro
15、m 成績(jī)信息表 join 學(xué)籍信息表 on 成績(jī)信息表.學(xué)號(hào)=學(xué)籍信息表.學(xué)號(hào)join 班級(jí)信息表 on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào)where 班級(jí)信息表.班級(jí)名稱(chēng)=classgroup by 學(xué)籍信息表.姓名,學(xué)籍信息表.學(xué)號(hào) order by avg(成績(jī)) desc,學(xué)籍信息表.學(xué)號(hào)4.4. 系統(tǒng)模塊詳細(xì)設(shè)計(jì)系統(tǒng)模塊詳細(xì)設(shè)計(jì)廣東海洋大學(xué)本科生課程設(shè)計(jì)4.1 用戶(hù)登錄模塊4.2 各用戶(hù)操作模塊4.2.1 管理員操作模塊(圖 1)4.2.2 教師操作模塊(圖 2) 廣東海洋大學(xué)本科生課程設(shè)計(jì) 圖 1 圖 24.2.3 學(xué)生操作模塊 5.5. 系統(tǒng)運(yùn)行與測(cè)試系統(tǒng)運(yùn)行與測(cè)試5.1 管
16、理員登錄 廣東海洋大學(xué)本科生課程設(shè)計(jì)點(diǎn)擊“管理員”按鈕。輸入正確的 id 和密碼。驗(yàn)證成功則可進(jìn)入管理員管理界面。管理員id號(hào)和登錄密碼存在數(shù)據(jù)庫(kù)中的管理員信息表。表中存在的管理員才允許登錄。(1)添加教師信息。在彈出的輸入欄中輸入正確的數(shù)據(jù)。 如果輸入重復(fù)的信息則會(huì)彈出。 如果某項(xiàng)未填則彈出。 輸入的數(shù)據(jù)會(huì)分別寫(xiě)進(jìn)“教師信息表”和“課程信息表”中。 增加的教師信息,允許讓更多的教師登錄本系統(tǒng)進(jìn)行管理操作?。?)修改教師信息廣東海洋大學(xué)本科生課程設(shè)計(jì) 如果要修改的教師信息不存在,則 (3)刪除信息修改 輸入的教師信息不存在,則 廣東海洋大學(xué)本科生課程設(shè)計(jì)(4)查詢(xún)教師信息5.2 教師登錄 在登
17、錄界面選擇“教師”按鈕,并輸入正確的 id 號(hào)和密碼,即可登錄成功!輸入錯(cuò)誤則會(huì)彈出提示! id 號(hào)輸入正確,登錄成功!進(jìn)入教師管理的操作界面: 廣東海洋大學(xué)本科生課程設(shè)計(jì)(1)顯示學(xué)生信息。 (2)添加學(xué)生信息廣東海洋大學(xué)本科生課程設(shè)計(jì) 新添加的信息會(huì)保存在學(xué)籍信息表中!如果輸入的信息已經(jīng)存在,則顯示 如果輸入的數(shù)據(jù)正確,則 廣東海洋大學(xué)本科生課程設(shè)計(jì) (3)修改學(xué)生信息,輸入正確則顯示! (4) 刪除學(xué)生信息, (5)錄入學(xué)生成績(jī) (6)修改學(xué)生成績(jī)廣東海洋大學(xué)本科生課程設(shè)計(jì) (7) 刪除學(xué)生成績(jī) (8)查詢(xún)學(xué)生成績(jī) 廣東海洋大學(xué)本科生課程設(shè)計(jì)(9)所有成績(jī)排名 (10)單科成績(jī)排名(11
18、)更改登錄密碼廣東海洋大學(xué)本科生課程設(shè)計(jì) 修改成功后即可用新的密碼進(jìn)行登錄!5.3 學(xué)生登錄 輸入正確的 id 號(hào)和密碼,即可正常登錄!廣東海洋大學(xué)本科生課程設(shè)計(jì)(1) 顯示學(xué)生信息(2) 查詢(xún)個(gè)人成績(jī) (3)單科成績(jī)排名 (4)全班成績(jī)排名廣東海洋大學(xué)本科生課程設(shè)計(jì)(5)修改密碼 修改密碼后會(huì)更新學(xué)生學(xué)籍表里面的登錄密碼,下次就可以用新密碼登錄。點(diǎn)擊 后,就可以安全退出學(xué)生管理系統(tǒng)了!廣東海洋大學(xué)本科生課程設(shè)計(jì)6 6課程設(shè)計(jì)總結(jié)課程設(shè)計(jì)總結(jié)課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程. 本次課程設(shè)計(jì)雖然很
19、辛苦,實(shí)在是受益匪淺。本來(lái)這門(mén)課的知識(shí)學(xué)的就不夠扎實(shí),本次課程設(shè)計(jì),在設(shè)計(jì)過(guò)程中碰到了很多問(wèn)題,剛開(kāi)始要設(shè)計(jì)的時(shí)候,還真不知道從哪里下手但最終在圖書(shū)、同學(xué)和老師的幫助下都得到了解決,讓我學(xué)會(huì)了好多書(shū)本上沒(méi)有的東西,通過(guò)本次課程設(shè)計(jì)我也能將課本上的知識(shí)融會(huì)貫通,起到了很好的輔助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識(shí)比整整一個(gè)學(xué)期學(xué)到的都多。理論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,通過(guò)這次課程設(shè)計(jì)之后,一定把以前所學(xué)過(guò)的知識(shí)重新溫故。 通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有
20、把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。 7附錄(代碼)附錄(代碼)廣東海洋大學(xué)本科生課程設(shè)計(jì)由于篇幅有限,所以只附上主要功能的代碼:由于篇幅有限,所以只附上主要功能的代碼:登陸界面與主功能界面:登陸界面與主功能界面:public class sql extends jframe implements actionlistener jframe mm=new jframe(您好!請(qǐng)您先登錄!); jtextfield t2=new jtextfield(null,15); jtextfield t4=new jpass
21、wordfield(null,15); public string zh=null; jradiobutton b=new jradiobutton(教師);jradiobutton b1=new jradiobutton(學(xué)生);jradiobutton b2=new jradiobutton(管理員); public void jiemian() mm.setsize(300,340); mm.setvisible(true); mm.setlocation(200,300); mm.setdefaultcloseoperation(jframe.exit_on_close); jlabe
22、l t1=new jlabel(id號(hào):); jlabel t3=new jlabel(密碼:); jbutton denglu2=new jbutton(登錄); denglu2.setcontentareafilled(false); container n=mm.getcontentpane(); n.setlayout(null); t1.setbounds(42,125,75,35); t2.setbounds(80,125,150,35); t3.setbounds(40,180,75,35); t4.setbounds(80,180,150,35); denglu2.setbou
23、nds(102,245,70,30); n.add(t1);n.add(t2); n.add(t3); n.add(t4); n.add(denglu2); b.setbounds(130,85,70,30); b1.setbounds(70,85,70,30); b2.setbounds(190,85,70,30); buttongroup rg=new buttongroup(); b.setselected(false); b1.setselected(true); b1.setselected(false); n.add(b); n.add(b2); rg.add(b2); rg.ad
24、d(b); n.add(b1); rg.add(b1); b.setcontentareafilled(false); b1.setcontentareafilled(false); b2.setcontentareafilled(false); denglu2.addactionlistener(this); public void actionperformed(actionevent e) jbutton denglu2=(jbutton)e.getsource();if(b.isselected() zh=t2.gettext(); string mima=t4.gettext();
25、try 廣東海洋大學(xué)本科生課程設(shè)計(jì)class.forname(sun.jdbc.odbc.jdbcodbcdriver);connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable); resultset r=s.executequery(select * from 教師信息表 where 教師id=+zh+ and 登錄密碼=+mima+); r.las
26、t(); if(r.getrow()=1) mm.setvisible(false); r.beforefirst(); while(r.next() joptionpane.showmessagedialog( null ,r.getstring(教師姓名)+老師!您好!歡迎登錄教師管理系統(tǒng)! ) ; jframe mmm=new jframe();mmm.setsize(400,420); mmm.setvisible(true); mmm.setlocation(200,300); mmm.setdefaultcloseoperation(jframe.exit_on_close); j
27、label aaa=new jlabel(學(xué)生信息管理:);jlabel aaa1=new jlabel(學(xué)生成績(jī)管理:);jbutton b1=new jbutton(顯示學(xué)生信息);b1.setbounds(40,45,140,30);jbutton b2=new jbutton(添加學(xué)生信息);b2.setbounds(200,45,140,30);jbutton b3=new jbutton(修改學(xué)生信息);b3.setbounds(40,90,140,30);jbutton b4=new jbutton(刪除學(xué)生信息);b4.setbounds(200,90,140,30);jbut
28、ton b5=new jbutton(錄入學(xué)生成績(jī));b5.setbounds(40,170,140,30);jbutton b6=new jbutton(修改學(xué)生成績(jī));b6.setbounds(200,170,140,30);jbutton b7=new jbutton(刪除學(xué)生成績(jī));b7.setbounds(40,215,140,30);jbutton b8=new jbutton(查詢(xún)學(xué)生成績(jī));b8.setbounds(200,215,140,30);jbutton b9=new jbutton(所有成績(jī)排名);b9.setbounds(40,260,140,30);jbutton
29、 b12=new jbutton(單科成績(jī)排名);b12.setbounds(200,260,140,30);jbutton b10=new jbutton(退出系統(tǒng));b10.setbounds(60,325,100,30);jbutton b11=new jbutton(修改密碼);b11.setbounds(220,325,100,30);aaa.setbounds(15,15,90,30); aaa1.setbounds(15,140,90,30);container n=mmm.getcontentpane();n.setlayout(null);j_actionlistener1
30、a1=new j_actionlistener1();j_actionlistener2 a2=new j_actionlistener2(); j_actionlistener3 a3=new j_actionlistener3(); j_actionlistener4 a4=new j_actionlistener4(); j_actionlistener5 a5=new j_actionlistener5(); j_actionlistener7 a7=new j_actionlistener7(); j_actionlistener8 a8=new j_actionlistener8(
31、); j_actionlistener9 a9=new j_actionlistener9(); j_actionlistener10 a10=new j_actionlistener10(); j_actionlistener12 a12=new j_actionlistener12(); j_actionlistener11 a11=new j_actionlistener11(); n.add(b1);n.add(b2);n.add(b3);n.add(b4);n.add(b5);n.add(b6); n.add(b7);n.add(b8);n.add(b9);n.add(b10);n.
32、add(aaa);n.add(aaa1);n.add(b11);n.add(b12);b1.addactionlistener(a1);b2.addactionlistener(a2); b3.addactionlistener(a3);b4.addactionlistener(a4);b5.addactionlistener(a5);廣東海洋大學(xué)本科生課程設(shè)計(jì)b6.addactionlistener(a7);b7.addactionlistener(a8);b8.addactionlistener(a9); b9.addactionlistener(a10); b11.addactionli
33、stener(a1)b12.addactionlistener(a12); b10.addactionlistener(new actionlistener() public void actionperformed(final actionevent e) system.exit(0); );(jcomponent) mmm.getcontentpane().setopaque(false); .url url = sql.class.getresource(未命名.jpg);imageicon img = new imageicon(url);jlabel background = new
34、 jlabel(img);mmm.getlayeredpane().add(background, new integer(integer.min_value);background.setbounds(0, 0, img.geticonwidth(), img.geticonheight(); else joptionpane.showmessagedialog( null ,教師id或密碼有誤!請(qǐng)重新輸入!) ; catch(exception e1) e1.printstacktrace(); public static void main(string args) sql app=ne
35、w sql(); app.jiemian(); 向數(shù)據(jù)庫(kù)添加新的學(xué)生信息:向數(shù)據(jù)庫(kù)添加新的學(xué)生信息:class database / database類(lèi)public void add(string xh,string xm,string xb,string bj,string jg,string mm) throws sqlexception /為學(xué)籍管理系統(tǒng)添加新記錄 try class.forname(sun.jdbc.odbc.jdbcodbcdriver);connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); state
36、ment s=c.createstatement(resultset.type_scroll_sensitive, resultset.concur_updatable);resultset r=s.executequery(select * from 學(xué)籍信息表 where 學(xué)號(hào)=+xh+); r.last(); if(r.getrow()=1) joptionpane.showmessagedialog( null ,該學(xué)號(hào)的學(xué)生信息已存在); else if(xh.equals() /判斷新輸入的學(xué)號(hào)是否為空 joptionpane.showmessagedialog( null ,學(xué)號(hào)
37、不能為空); else s.executeupdate( insert into 學(xué)籍信息表 values (+xh+,+xm+,+xb+,+ bj+,+jg+,+mm+); s.close();c.close(); joptionpane.showmessagedialog( null ,+學(xué)號(hào):+xh+姓名:+xm+ +性別:+xb+班級(jí)號(hào):+bj+ +籍貫:+jg+ +登錄密碼:+mm+學(xué)生記錄添加成功! ) ; 廣東海洋大學(xué)本科生課程設(shè)計(jì) catch (classnotfoundexception e) joptionpane.showmessagedialog( null , 數(shù)據(jù)添
38、加異常! ) ; public void displayall(resultset r) jframe m=new jframe(顯示所有學(xué)生信息);m.setbounds(60,70,700,600);m.setvisible(true);jtextarea aa=new jtextarea();aa.setbounds(0,0,700,600);container c1=m.getcontentpane();c1.setlayout(null);c1.add(aa); try r.last(); aa.append(t學(xué)號(hào)+t+ 姓名+t+性別+t+班級(jí)+t+籍貫+n); r.before
39、first(); while(r.next() aa.append(第+r.getrow()+行記錄: ); aa.append(r.getstring(學(xué)號(hào)); aa.append(t+r.getstring(姓名); aa.append(t+r.getstring(性別); aa.append(t+r.getstring(班級(jí)); aa.append(t+r.getstring(籍貫)+n); catch(exception e) e.printstacktrace(); public void displayone(string str22) throws exception try c
40、onnection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable); resultset r=s.executequery(select 學(xué)號(hào) ,姓名,性別, 班級(jí)名稱(chēng) as 班級(jí),籍貫 from 學(xué)籍信息表 join 班級(jí)信息表 on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào) where 學(xué)號(hào)=+str22+); /執(zhí)行查詢(xún)的sql語(yǔ)句 r.last(); int
41、 cc=r.getrow(); if(cc=0) joptionpane.showmessagedialog( null ,未查詢(xún)到相關(guān)信息! ) ; elser.beforefirst(); while(r.next() joptionpane.showmessagedialog( null ,+ 學(xué)號(hào):+r.getstring(學(xué)號(hào))+姓名:+r.getstring(姓名)+性別:+r.getstring(性別)+ +班級(jí):+r.getstring(班級(jí))+廣東海洋大學(xué)本科生課程設(shè)計(jì)+籍貫:+r.getstring(籍貫)+ 已查詢(xún)到相關(guān)記錄! ) ; catch(exception e)
42、 e.printstacktrace(); public void deletexh(string str11) /執(zhí)行按學(xué)號(hào)刪除學(xué)生記錄的操作 try class.forname(sun.jdbc.odbc.jdbcodbcdriver);connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable);resultset r=s.executequery(
43、select * from 學(xué)籍信息表 where 學(xué)號(hào)=+str11+); r.last();if(r.getrow()=1) s.executeupdate(delete from 學(xué)籍信息表 where 學(xué)號(hào)=+str11+); joptionpane.showmessagedialog( null , 學(xué)生記錄刪除成功! ) ; else joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ); catch(exception e) public void deletexm(string str13) /執(zhí)行按姓名刪除學(xué)生記錄的操作 tr
44、y class.forname(sun.jdbc.odbc.jdbcodbcdriver);connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable);resultset r=s.executequery(select * from 學(xué)籍信息表 where 姓名=+str13+); r.last(); if(r.getrow()=1) s.execute
45、update(delete from 學(xué)籍信息表 where 姓名=+str13+); joptionpane.showmessagedialog( null , 學(xué)生記錄刪除成功! ) ; else joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; catch(exception e) public void updatexh(string xg,string str15,string str16) try class.forname(sun.jdbc.odbc.jdbcodbcdriver);廣東海洋大學(xué)本科生課程設(shè)計(jì)connect
46、ion c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable);resultset r=s.executequery(select * from 學(xué)籍信息表 where 學(xué)號(hào)=+xg+); r.last(); if(r.getrow()=1) s.executeupdate(update 學(xué)籍信息表 set +str15+=+str16+ where 學(xué)號(hào)=+xg+);
47、/直接執(zhí)行sql語(yǔ)句修改 joptionpane.showmessagedialog( null , 學(xué)生記錄修改成功! ) ; elsejoptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; ; catch(exception e) joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; public void updatexm(string str18,string str19,string str20) try class.forname(sun.jdbc.odbc.jdbcodbcd
48、river);connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng));statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable); resultset r=s.executequery(select * from 學(xué)籍信息表 where 姓名=+str18+); r.last(); if(r.getrow()=1) s.executeupdate(update 學(xué)籍信息表 set +str19+=+str20+
49、 where 姓名=+str18+); /直接執(zhí)行sql語(yǔ)句修改 joptionpane.showmessagedialog( null , 學(xué)生記錄修改成功! ) ; elsejoptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; ; catch(exception e) joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; public void addscore(string xh,string kch, string cj) try class.forname(sun.jdbc.o
50、dbc.jdbcodbcdriver); connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable); if(xh.equals()|kch.equals()|cj.equals() 廣東海洋大學(xué)本科生課程設(shè)計(jì)joptionpane.showmessagedialog( null ,輸入框不允許為空); else resultset r=s.execut
51、equery(select * from 成績(jī)信息表 where 學(xué)號(hào)=+xh+ and 課程號(hào)=+kch+); r.last(); int i=integer.parseint(cj); if(r.getrow()=1) joptionpane.showmessagedialog( null ,該學(xué)生該科成績(jī)已存在); else s.executeupdate( insert into 成績(jī)信息表 values (+xh+,+kch+,+i+); joptionpane.showmessagedialog( null ,+學(xué)號(hào):+xh+ +課程號(hào):+kch+成績(jī):+cj+ 學(xué)生成績(jī)添加成功!
52、 ) ; catch (exception e) joptionpane.showmessagedialog( null , 成績(jī)輸入的學(xué)號(hào)或者課程號(hào)不存在! ) ; public void updatescore(string xh,string kch,string cj) try class.forname(sun.jdbc.odbc.jdbcodbcdriver); connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scrol
53、l_sensitive, resultset.concur_updatable); if(xh.equals()|kch.equals()|cj.equals() joptionpane.showmessagedialog( null ,輸入框不允許為空); elseint i=integer.parseint(cj); resultset r=s.executequery(select * from 成績(jī)信息表 where 學(xué)號(hào)=+xh+ and 課程號(hào)=+kch+); r.last();if(r.getrow()=1) s.executeupdate(update 成績(jī)信息表 set 成績(jī)
54、=+i+ where 學(xué)號(hào)=+xh+ and 課程號(hào)=+kch+); joptionpane.showmessagedialog( null , 學(xué)生成績(jī)修改成功! ) ; else joptionpane.showmessagedialog( null ,成績(jī)表中并無(wú)相關(guān)記錄! ) ; ; catch(exception e) joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ) ; public void deletescore(string xh,string kch) try class.forname(sun.jdbc.odbc.jd
55、bcodbcdriver); connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.concur_updatable);廣東海洋大學(xué)本科生課程設(shè)計(jì) resultset r=s.executequery(select * from 成績(jī)信息表 where 學(xué)號(hào)=+xh+ and 課程號(hào)=+kch+); r.last(); if(r.getrow()=1) s.executeupdate
56、(delete from 成績(jī)信息表 where 學(xué)號(hào)=+xh+ and 課程號(hào)=+kch+); joptionpane.showmessagedialog( null , 學(xué)生記錄刪除成功! ) ; else joptionpane.showmessagedialog( null ,學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄! ); catch(exception e) public void searchscore(string xh) jframe m=new jframe(學(xué)號(hào)+xh+的各科成績(jī)); m.setbounds(60,70,326,320); m.setvisible(true); jtext
57、area aa=new jtextarea(); aa.setbounds(0,0,326,320); container c1=m.getcontentpane(); c1.setlayout(null); c1.add(aa); try class.forname(sun.jdbc.odbc.jdbcodbcdriver); connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s=c.createstatement( resultset.type_scroll_sensitive, resultset.
58、concur_updatable); resultset r1= s.executequery(select 學(xué)號(hào),課程名稱(chēng),成績(jī) from 成績(jī)信息表 join 課程信息表 on 成績(jī)信息表.課程號(hào)=課程信息表.課程號(hào) + where 學(xué)號(hào)=+xh+); r1.last(); aa.append(查詢(xún)到該學(xué)生+r1.getrow()+科成績(jī)+n); r1.beforefirst(); aa.append( 學(xué)號(hào)+t+ 課程名稱(chēng) +t+ 成績(jī)+n); while(r1.next() aa.append(r1.getstring(學(xué)號(hào)); aa.append(t +r1.getstring(課程
59、名稱(chēng)); aa.append(t +r1.getstring(成績(jī))+n); catch(exception e) e.printstacktrace(); public void listall(string banji) jframe m=new jframe(banji+班成績(jī)排名);m.setbounds(60,70,413,319);廣東海洋大學(xué)本科生課程設(shè)計(jì)m.setvisible(true);jtextarea aa=new jtextarea();aa.setbounds(0,0,413,319);container c1=m.getcontentpane();c1.setla
60、yout(null);c1.add(aa);try class.forname(sun.jdbc.odbc.jdbcodbcdriver); connection c=drivermanager.getconnection(jdbc:odbc:學(xué)生信息系統(tǒng)); statement s;s = c.createstatement(resultset.type_scroll_sensitive, resultset.concur_updatable); string sql=execute 全班排名 +banji+; resultset r1= s.executequery(sql); r1.la
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度砂石料開(kāi)采許可合同2篇
- 二零二五年度文化旅游股權(quán)置換與增資開(kāi)發(fā)合同3篇
- 二零二五年度環(huán)保項(xiàng)目施工合同示范文本一造實(shí)操指導(dǎo)3篇
- 《出口退稅政策》課件
- 二零二五年度導(dǎo)購(gòu)員售后服務(wù)標(biāo)準(zhǔn)規(guī)范合同
- 心血管科護(hù)士的工作總結(jié)
- 二零二五年度海上風(fēng)電場(chǎng)用變壓器運(yùn)輸、安裝與保障合同2篇
- 2024裝飾項(xiàng)目施工勞務(wù)分包協(xié)議模板版B版
- 二零二五年度房屋買(mǎi)賣(mài)定金合同(含家具家電配置)模板3篇
- 2024版運(yùn)輸企業(yè)安全員工作交接合同
- 【APP違規(guī)收集個(gè)人信息的法律問(wèn)題分析9800字(論文)】
- 商品房預(yù)售合同簽約證明和預(yù)告登記申請(qǐng)書(shū)
- 質(zhì)量管理體系成熟度評(píng)估表
- 國(guó)際疾病分類(lèi)腫瘤學(xué)專(zhuān)輯第3版應(yīng)用課件
- 單體調(diào)試及試運(yùn)方案
- 2023-2024學(xué)年浙江省杭州市城區(qū)數(shù)學(xué)四年級(jí)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含答案
- 五星級(jí)酒店市場(chǎng)調(diào)研報(bào)告
- 車(chē)輛剮蹭私下解決協(xié)議書(shū)(3篇)
- 網(wǎng)球技術(shù)與戰(zhàn)術(shù)-華東師范大學(xué)中國(guó)大學(xué)mooc課后章節(jié)答案期末考試題庫(kù)2023年
- 2022-2023學(xué)年衡水市深州市小升初數(shù)學(xué)高頻考點(diǎn)檢測(cè)卷含答案
- 現(xiàn)代科學(xué)技術(shù)概論知到章節(jié)答案智慧樹(shù)2023年成都師范學(xué)院
評(píng)論
0/150
提交評(píng)論