下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、專業(yè).專注Wuhan Institute of Bioengineering2015 _至2016_第二學(xué)期期末考試課程:JavaJava 語言程序設(shè)計題目:學(xué)生信息管理系統(tǒng)類別:論文設(shè)計 V院系:計算機與信息工程系專業(yè)班級:信息管理20132013 級本科 1 1 班學(xué)號:0303, 0404, 0707, 0808, 1515學(xué)生姓名:邱丹丹范柳,譚鴻儒,何婧,陸瑤專業(yè).專注3.3.2SQL語句實現(xiàn). 1.Q教務(wù)處制二O五年九月目錄1.學(xué)生信息管理系統(tǒng)概述3數(shù)據(jù)庫設(shè)計.5.3.1系統(tǒng)概念結(jié)構(gòu)設(shè)計.5.3.2系統(tǒng)邏輯結(jié)構(gòu)設(shè)計.7.3.3數(shù)據(jù)庫實現(xiàn) .1.03.3.1數(shù)據(jù)庫關(guān)系圖 .1.0.完
2、成時間:20162016 年 6 6 月 2424 日周方任課教師:1.1研究背景1.2開發(fā)意義2.1開發(fā)環(huán)境和軟件2.2系統(tǒng)設(shè)計與功能分析2.3功能層次圖專業(yè).專注4.系統(tǒng)模塊詳細(xì)設(shè)計 .丄.54.1用戶登錄模塊.1.54.2.1管理員操作模塊(圖1) .1.6422教師操作模塊(圖2) .4.2.3學(xué)生操作模塊(圖3).5.系統(tǒng)運行與測試.175.1管理員登錄5.2教師登錄4.2各用戶操作模塊.1.6.1.72.05.3學(xué)生登錄.2.J.6.課程設(shè)計總結(jié).3.丄7.附錄(代碼).3.2.專業(yè)專注學(xué)生信息管理系統(tǒng)1.1. 學(xué)生信息管理系統(tǒng)概述1.1研究背景學(xué)生信息管理系統(tǒng)是學(xué)校管理的重要工具
3、,是學(xué)校不可或缺的部分。隨著在校大 學(xué)生人數(shù)的不斷增加,教務(wù)系統(tǒng)的數(shù)量也不斷的上漲,。學(xué)校工作繁雜、資料眾多, 人工管理信息的難度也越來越大,顯然是不能滿足實際的需要,效率也是很低的。并 且這種傳統(tǒng)的方式存在著很多的弊端,女口:保密性差、查詢不便、效率低,很難維護和更新等。然而,本系統(tǒng)針對以上缺點能夠極大地提高學(xué)生信息管理的效率,也是科學(xué)化、正規(guī)化的管理,與世界接軌的重要條件。所以如何自動高效地管理信息是這些年來 許多人所研究的。1.2開發(fā)意義隨著這些年電腦計算機的速度質(zhì)的提高,成本的下降,IT互聯(lián)網(wǎng)大眾趨勢的發(fā)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。學(xué)生學(xué)籍管理系統(tǒng)的出現(xiàn),正是管理人
4、員與信息數(shù)據(jù),計算機的進入互動時代的體現(xiàn)。友好的人機交互模式,清晰 簡明的圖形界面,高效安全的操作使得我們對成千上萬的信息的管理得心應(yīng)手。通過.專業(yè)專注這個系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計和快速的查詢,從而減少管理方面的工作量?毋庸置疑,切實有效地把計算機管理引入學(xué)校教務(wù)管理中,對于促進學(xué)校管理制度,提高學(xué)校教學(xué)質(zhì)量與辦學(xué)水平有著顯著意義?2.2. 系統(tǒng)需求分析2.1開發(fā)環(huán)境和軟件(1) 操作系統(tǒng):Windows 7(2) 數(shù)據(jù)庫軟件:mysql-5.7.13-winx64(3)Java開發(fā)工具:Eclipsemysql-connector-java-5(JDBC驅(qū)動包)jdk-8u73
5、-windows-x64(java運行環(huán)境壓縮包)2.2系統(tǒng)設(shè)計與功能分析.專業(yè)專注學(xué)生信息管理系統(tǒng),可用于學(xué)校等機構(gòu)的學(xué)生信息管理,查詢,更新與維護,使用方便,易用性強,圖形界面清晰明了。該軟件用java語言編寫,用SQLServer2005數(shù)據(jù)庫作為后臺的數(shù)據(jù)庫進行信息的存儲,用SQL語句完成學(xué)生學(xué) 籍信息的添加,查詢,修改,刪除的操作以及成績的錄入 ,修改,刪除等。用ODBC驅(qū)動實現(xiàn)前臺Java與后臺SQL數(shù)據(jù)庫的連接。Java語言跨平臺性強,可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡單,安全性好。SQLServer2005數(shù)據(jù)庫高效安全,兩者結(jié)合可相互利用各自的
6、優(yōu)勢。該系統(tǒng)實現(xiàn)的大致功能:1.用戶登陸界面。該界面可以選擇使用者的身份,管理員,教師,學(xué)生”。不同 的身份有不同的操作界面和功能權(quán)限。ID號和密碼輸入正確即可登錄。學(xué)生管 理界面。提供了學(xué)生學(xué)籍信息的查詢,相關(guān)科目的成績查詢和排名,修改登錄 密碼等功能。2.教師管理界面。提供了對學(xué)生學(xué)籍信息的查詢,添加,修改,刪除;學(xué)生成績 的錄入,修改,刪除,查詢班級排名。修改密碼等功能。3.管理員管理界面。擁有最高的權(quán)限。允許添加教師信息和課程信息等。4.登錄的用戶信息分別存儲在SQL數(shù)據(jù)庫的管理員信息表”, 教師信息表”,學(xué)籍信息表”中,如果用戶信息不存在則三張表中,將會無權(quán)利登錄本管理系統(tǒng)。保證了本
7、學(xué)生管理系統(tǒng)的安全性。2.3功能層次圖專業(yè).專注學(xué)生管理系統(tǒng)JKA師信負(fù)管理士學(xué)卡信慮管理一1示學(xué)4.4.信息錄 入學(xué):帚成 績刪 除學(xué)成 績3.1系統(tǒng)概念結(jié)構(gòu)設(shè)計3 3 數(shù)據(jù)庫設(shè)計專業(yè).專注教師姓名專業(yè).專注實體屬性表:實體屬性教師教師ID,教師姓名,登錄密碼課程課程號,課程名稱,教師ID管理員管理員ID,登錄密碼班級班級號,班級名稱,總?cè)藬?shù)學(xué)籍學(xué)號,姓名,性別,班級號,籍貫,登錄密碼成績學(xué)號,課程號,成績3.2系統(tǒng)邏輯結(jié)構(gòu)設(shè)計教師信息表:字段名類型空值約束條件總?cè)藬?shù)專業(yè).專注教師 IDvarchar(8)not null主鍵教師姓名varchar(8)not null登錄密碼varchar
8、(8)not null課程信息表:字段名類型空值約束條件I田千口i=r.課程號varchar(8)not null主鍵課程名稱varchar(12)not null教師 IDvarchar(8)not null外鍵班級信息表:字段名類型空值約束條件班級號varchar(8)not null主鍵班級名稱varchar(8)not null所屬學(xué)院varchar(6)班級人數(shù)n char(4)專業(yè).專注管理員信息表:字段名類型空值約束條件管理員 IDvarchar(IO)not null主鍵登錄密碼varchar(IO)not null成績信息表:字段名類型空值約束條件班級號varchar(15)
9、not null主鍵,外鍵班級名稱varchar(8)not null主鍵,外鍵所屬學(xué)院smalli ntnot null學(xué)籍信息表:字段名類型空值約束條件學(xué)號ntnot n ull主鍵姓名varchar(30) rot null性別char(2)班級號varchar(30)ot null外鍵專業(yè).專注籍貫char(10)登錄密碼moneynot n ull3.3數(shù)據(jù)庫實現(xiàn)331數(shù)據(jù)庫關(guān)系圖成嘯信息表E E學(xué)號varchar15)1 1?踝程號vardw0)r r學(xué)陪信息表性別登錄更碼?教帥信息表 簾做帀ID勒帀娃営 登錄密瑪管理員信見表?管E E1 1貫IDID登錄巒瑪課程信息表課程啟稱鎖師
10、ID班級信息表專業(yè).專注3.3.2SQL語句實現(xiàn)數(shù)據(jù)表的創(chuàng)建:(1)教師信息表創(chuàng)建:create table教師信息表(教師ID varchar(8) primary key ,教師姓名varchar(8) not null unique.登錄密碼varchar(8) not null,)(2)課程信息表創(chuàng)建:create table課程信息表(課程號varchar(8) primary key,課程名稱varchar(12) not null,教師ID varchar(8) not nullforeign key(教師ID) references教師信息表(教師ID) )(3)班級信息表創(chuàng)建
11、:create table班級信息表(班級號 varchar(8) not null primary key,班級名稱 varchar(8) not null unique,所屬學(xué)院 varchar(8),專業(yè).專注班級人數(shù) nchar(4)(4)學(xué)籍信息表創(chuàng)建:create table學(xué)籍信息表(學(xué)號 varchar(15) primary key,姓名 varchar(8) not null ,性別 varchar(4),班級號 varchar(8) not null,籍貫 varchar(5),登錄密碼 varchar(6) not nullforeign key ( 班級號)refer
12、ences班級信息表(班級號)(5)成績信息表創(chuàng)建: create table 成績信息表(學(xué)號 varchar(15), 課程號 varchar(8), 成績 smallintprimary key( 學(xué)號,課程號)foreign key ( 學(xué)號)references學(xué)籍信息表(學(xué)號),foreign key (課程號)references課程信息表(課程號)(6)管理員信息表創(chuàng)建:create table 課程信息表( 管理員 ID varchar(8) primary key, 登錄密碼 varchar(12) not null視圖的創(chuàng)建:(1)教師課程詳細(xì)信息”視圖創(chuàng)建:專業(yè).專注c
13、reate view 教師課程詳細(xì)信息asSELECT 教師信息表.教師 ID,教師信息表.教師姓名,課程信息表.課程號,課程信息表.課程名稱教師信息表.登錄密碼FROM 教師信息表JOIN 課程信息表 ON 教師信息表.教師 ID =課程信息表.教師 ID(2)學(xué)生成績信息”視圖創(chuàng)建:create view學(xué)生成績信息asSELECT 學(xué)籍信息表.學(xué)號,學(xué)籍信息表.姓名,學(xué)籍信息表.性別,課程信息表.課程名稱,成績信息表.成績FROM 成績信息表JOIN學(xué)籍信息表ON成績信息表 .學(xué)號=學(xué)籍信息表.學(xué)號JOIN班級信息表ON班級信息表 .班級號=學(xué)籍信息表.班級號JOIN課程信息表ON課程信
14、息表 .課程號=成績信息表.課程號存儲過程創(chuàng)建:(1)單科成績排名”創(chuàng)建:create proc dbo.單科成績排名keche nn ame char(8),class name char(8)專業(yè).專注asselect 學(xué)籍信息表學(xué)號,姓名,成績from成績信息表joi n 課程信息表 on課程信息表.課程號=成績信息表 .課程號joi n 學(xué)籍信息表 on學(xué)籍信息表 .學(xué)號=成績信息表.學(xué)號join 班級信息表 on班級信息表.班級號=學(xué)籍信息表 .班級號where 課程名稱=kechennameand 班級名稱=classnameorder by 成績 desc(2)全班排名”創(chuàng)建:c
15、reate proc dbo.全班排名class char (8)asselect 學(xué)籍信息表 學(xué)號,姓名,avg (成績)as 平均分,sum (成績)as 總分from 成績信息表join 學(xué)籍信息表on 成績信息表學(xué)號=學(xué)籍信息表學(xué)號join 班級信息表on 班級信息表.班級號=學(xué)籍信息表.班級號where 班級信息表.班級名稱=classgroup by 學(xué)籍信息表姓名,學(xué)籍信息表學(xué)號order by avg (成績)desc,學(xué)籍信息表 學(xué)號專業(yè).專注4.系統(tǒng)模塊詳細(xì)設(shè)計4.1用戶登錄模塊凹怒好!僵您先登錄!EZI專業(yè).專注4.2各用戶操作模塊4.2.1管理員操作模塊(圖1)4.2.
16、2教師操作模塊(圖2)4.2.3學(xué)生操作模塊(圖3)圖1專業(yè).專注J FunctionljiVd丄(100190/(150190unds(175j:add(t2);i22085,70(165,857(275857rg=newBud(false);pd(true);ed(false)dd(b2);r.AreaFilleitAreaFilljtAreaPilli點擊管理員”按鈕。 輸入正確的ID和密碼。 驗證成功則可進入管理員管理界面。 管理員ID號和登錄密碼存在數(shù)據(jù)庫中的管理員信息表。表中存在的管理員才允許登錄。(1)添加教師信息。在彈出的輸入欄中輸入正確的數(shù)據(jù),點擊確認(rèn)添加”。5.1管理員登錄
17、5.5. 系統(tǒng)運行與測rhf I I“l(fā)l I專業(yè).專注勒師ID:D04教師姓名:0Q4登錄密碼:0(M課程號血4課程名次學(xué)英語 教師信息透加成功!確定:您輸入的戰(zhàn)師ID已存在已存在如果輸入重復(fù)的信息則會彈出輸入框不允許対空如果某項未填則彈出 輸入的數(shù)據(jù)會分別寫進 教師信息表”和課程信息表”中 增加的教師信息,允許讓更多的教師登錄本系統(tǒng)進行管理操作!(2)修改教師信息磧認(rèn)添Jiu專業(yè).專注請輸入要陰改的勒師的ID清輸入要直改的屬性請輸入新的數(shù)攥 毅師信息睦眈成功!確走學(xué)黠系銃中#無相關(guān)記錄!確定如果要修改的教師信息不存在,則(3)刪除信息修改?請輸入要刪除的額師IDi教師信息刪除咸功!隔定專業(yè)
18、.專注輸入的教師信息不存在,則(4)查詢教師信息教師ID教師姓售課程編號課程名稱登錄密碼002鄭滋紅Q02敎據(jù)障原理002003路飛003管理學(xué)003004不二004大學(xué)英語0045.2教師登錄在登錄界面選擇教師”按鈕,并輸入正確的ID號和密碼,即可登錄成功!輸入錯誤則會彈出提示!專業(yè).專注ID號輸入正確,登錄成功!進入教師管理的操作界面: 鄭贊紅老師2 feiF!就呦登錄勒師管理系魏2(1)顯示學(xué)生信息學(xué)號性別班級第1行記200811622121邱志堅信W10&1200811622122沈一鳴第信腎1朋1藹布記錄200011622123溫子民信e1081竜4行記錄:200811622
19、124吳曉陽信管協(xié)朗專業(yè).專注(2)添加學(xué)生信息學(xué)號:姓名:性別二班無號新添加的信息會保存在學(xué)籍信息表中該學(xué)號的字生信息已存在確走如果輸入的信息已經(jīng)存在,則顯示專業(yè).專注學(xué)號:200B11622101姓名蔡文謹(jǐn) 性別舅班St號:剛舞賈燼伕登錄密圏:1們學(xué)生記錄瀟加威功!確定如果輸入的數(shù)據(jù)正確,則(3)修改學(xué)生信息,輸入正確則顯示!潔輸入要直改的學(xué)生的學(xué)號丨請輸入要魁改的屬性請輸入新的數(shù)揺,_,學(xué)生記錄儲扳成功:繼歐_確定(4)刪除學(xué)生信息,專業(yè).專注(5)錄入學(xué)生成績(6)修改學(xué)生成績請輸入要陽改的學(xué)號?請輸冬要刪除的記錄的學(xué)雋:0學(xué)生記錄刪除成功三確定錄入學(xué)生咸績幅改嚴(yán)功2確定學(xué)號 渥程號:
20、學(xué)號200811622124踝程號;嘰2成囊83學(xué)生成績添加成功確定專業(yè).專注(7)刪除學(xué)生成績請窺入要刪除的學(xué)號二I_請輸入要刪除的課程名:(/ 學(xué)生記錄刪臨欣功2刪隱(8)查詢學(xué)生成績(9)所有成績排名請輸入要查間啖韁的學(xué)號200811622124査詢到該學(xué)生謂成績學(xué)號200811622124數(shù)撻庫原理苗200611622124管理學(xué)S3200811622124大學(xué)英語31專業(yè).專注清輸入要要遊行排名的班級名稱:信61081查聞學(xué)號姓名平均分總分第諂:200S11622124吳陜陽S3243200811622123溫子民81243(10)單科成績排名(11)更改登錄密碼學(xué)號第諂:20081
21、1622124第2名:200311622123姓名咸第吳濟陽31溫子民77專業(yè).專注修改成功后即可用新的密碼進行登錄!宏碼儲改成功!確定5.3學(xué)生登錄 繼改密碼可能會導(dǎo)皺無蚩登陸!請謹(jǐn)悄!請輸入教師ID:亡 您好!請忽先登錄1ID號200811622121專業(yè).專注輸入正確的ID號和密碼,即可正常登錄!(1)顯示學(xué)生信息(2)查詢個人成績萱洵到該學(xué)生卿成績學(xué)號課程名稱成績200811622123數(shù)捱庫原理86200311622123管理學(xué)30200811622123大學(xué)英語77(3)單科成績排名學(xué)E姓名性別班級第1行記錄=200811622121邱志堅H H信管11第昭記錄:200S11622
22、122沈一鳴信11001第布記錄.200811622123溫子民信管10朗第4行記錄200011622124吳曉陽信1081貫北南京北專業(yè).專注學(xué)號姓名成績第1名:200811622124吳嵯陽81第2名:200811622123溫子民77(4)全班成績排名請輸入要要遴行排害的班繚名稱: 信管查間(5)修改密碼請輸入要排窖的科目二請輸入要排名的班純;1學(xué)號姓名平均忖總分第畑200611622124吳曉陽83249第2名:200811622123溫子民S1243專業(yè).專注修改密碼后會更新學(xué)生學(xué)籍表里面的登錄密碼,下次就可以用新密碼登錄i肓輔入學(xué)生ID:隔認(rèn)唯改密碼健改成功!確定點擊退出系統(tǒng)后,
23、就可以安全退出學(xué)生管理系統(tǒng)了專業(yè).專注6.6. 課程設(shè)計總結(jié)課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐 能力的重要環(huán)節(jié),是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程.本次課程設(shè)計雖然很 辛苦,實在是受益匪淺。本來這門課的知識學(xué)的就不夠扎實,本次課程設(shè)計,在設(shè)計 過程中碰到了很多問題,剛開始要設(shè)計的時候,還真不知道從哪里下手 但最終在圖 書、同學(xué)和老師的幫助下都得到了解決,讓我學(xué)會了好多書本上沒有的東西,通過本 次課程設(shè)計我也能將課本上的知識融會貫通 ,起到了很好的輔助學(xué)習(xí)的效果,但是我 發(fā)現(xiàn)我學(xué)到的知識比整整一個學(xué)期學(xué)到的都多。理論和實踐的相結(jié)合是學(xué)習(xí)最有效的 方
24、法。在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深 刻,掌握得不夠牢固,通過這次課程設(shè)計之后,一定把以前所學(xué)過的知識重新溫故。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠(yuǎn) 遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正 為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力 。專業(yè).專注7.7. 附錄(代碼)由于篇幅有限,所以只附上主要功能的代碼登陸界面與主功能界面:public class Login extends JFrame implements ActionListener JFrame mm =new JFr
25、ame(”您好!請您先登錄!);JTextField t2 = new JTextField( null ,15);JTextField t4 = new JPasswordField( 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(
26、 true );mm .setLocation(200,300);mm .setDefaultCloseOperation(JFrame.EXIT_ON_CLOSEJLabel t1= new JLabel(ID 號:);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 .setBou
27、nds(80,125,150,35);t3.setBounds(40,180,75,35);t4 .setBounds(80,180,150,35); denglu2.setBounds(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
28、( false );b1 .setSelected( true );b1 .setSelected( false );n.add( b); n.add( b2); rg.add( b2); rg.add( b); n.add( b1); rg.add( b1); b .setContentAreaFilled( false );專業(yè).專注bl .setContentAreaFilled( false );b2 .setContentAreaFilled( false );denglu2.addActionListener( this ); public void actionPerformed
29、(ActionEvent e) JButton denglu2=(JButton)e.getSource();if (b.isSelected() zh= t2 .getText();String mima= t4 .getText();try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:學(xué)生信息系統(tǒng));Statement s=c.createStatement(ResultSet.TYPE_SCROLL_SENSITIVEResultSet.CON
30、CUR_UPDATABLEResultSet r=s.executeQuery( select * from 教師信息表 where 登錄密碼=+mima+ );r.last();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 );J
31、_ActionListener4 a4= new J_ActionListener4();教師 ID= +zh + and歡迎登mmm.setLocation(200,300);mmm.setDefaultCloseOperation(JFrame.JLabel aaa=JButton b1 =EXIT_ON_CLOSEnew JLabel(學(xué)生信息管理:);JLabel aaa 1= new JLabel(學(xué)生成績管理:);newJButton b2=JButton b3=newnewJButton b4=JButton b5=newnewJButton b6=JButton b7=newn
32、ewJButton b8=newnewJButton(顯示學(xué)生信息);b1.setBounds(40,45,140,30);JButton(添加學(xué)生信息);b2.setBounds(200,45,140,30);JButton(修改學(xué)生信息 ”);b3.setBounds(40,90,140,30);JButton(刪除學(xué)生信息);b4.setBounds(200,90,140,30);JButton(錄入學(xué)生成績);b5.setBounds(40,170,140,30);JButton(修改學(xué)生成績);b6.setBounds(200,170,140,30);JButton(刪除學(xué)生成績);
33、b7.setBounds(40,215,140,30);JButton(查詢學(xué)生成績);b8.setBounds(200,215,140,30);JButton(所有成績排名);b9.setBounds(40,260,140,30);JButtonb9=JButtonJButton 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
34、,140,90,30);Container n=mmm.getContentPane();n.setLayout( null );J_ActionListener1 a1 =J_ActionListener2 a2=J_ActionListener3 a3=new J_ActionListener1();new J_ActionListener2();new J_ActionListener3();專業(yè).專注J_ActionListener5 a5= new J_ActionListener5();J_ActionListener7 a7= new J_ActionListener7();J_
35、ActionListener8 a8= new J_ActionListener8();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.a
36、dd(b7);n.add(b8);n.add(b9);n.add(b10);n.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);b6.addActionListener(a7);b7.addActionListener(a8);b8.addActionListener(a9);b9.addActionListe
37、ner(a10); b11.addActionListener(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 Imagelcon(
38、url);JLabel background = new JLabel(img);mmm.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE); background.setBounds(0, 0,img.getlconWidth(), img.getlconHeight();else JOptionPane.showMessageDialog( null,教師 ID 或密碼有誤!請重新輸入! );catch (Exception e1) e1.printStackTrace();public static void m
39、ain(String args)Login app= new Login();app.jiemian();向數(shù)據(jù)庫添加新的學(xué)生信息:class DataBase/ DataBase 類public static Conn ecti on getC onn ecti on( )throwsSQLExcepti on ,java .lan g.ClassNotFou ndExcepti on/建立本地數(shù)據(jù)庫連接,編碼規(guī)則轉(zhuǎn)換為正常錄入中文)Stri ng url= jdbc:mysql:/localhost:3306/stude ntma nageme nt?use Un icode=true&a
40、mp;characterE ncodi ng=GBK;Class.forName(com.mysql.jdbc.Driver);Stri ng userName=root;專業(yè).專注Conn ecti on con=DriverMa nager.getC onn ecti on( url, userName, );return con;public voidAdd(Str ing xh,Stri ng xm,Stri ng xb,Stri ng bj,Stri ng jg,Stri ng mm)throwsSQLException /為學(xué)籍管理系統(tǒng)添加新記錄try Stateme nt Dat
41、aBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.executeQuery( select * from學(xué)籍信息表where 學(xué)號=+xh+ );r.last();if (r.getRow()=1) JOptionPane.showMessageDialog( null ,該學(xué)號
42、的學(xué)生信息已存在);Else if (xh.equals( )/判斷新輸入的學(xué)號是否為空J(rèn)OptionPane.showMessageDialog( null ,學(xué)號不能為空);else s.executeUpdate( insert into學(xué)籍信息表values(+xh+ , +xm+ , +xb+ ,+ bj+ , +jg+ , +mm+ );s.close();c.close();專業(yè).專注JOptionPane.showMessageDialog( null ,+學(xué)號:+xh+ + 姓名:+xm+ + 性別:+xb+ +班級號:+bj+ + 籍貫:+jg+ +登錄密碼:+mm+ 學(xué)生
43、記錄添加成功! ) ; catch (ClassNotFoundException e)JOptionPane.showMessageDialog( null ,數(shù)據(jù)添加異常! );public void DisplayAll(ResultSet r)m= new JFrame(顯示所有學(xué)生信息 );m.setBou nds(60,70,700,600);m.setVisible( true );JTextArea aa= new JTextArea(); aa.setBounds(0,0,700,600);Container c1=m.getC onten tPa ne();c1.setLa
44、yout( null );c1.add(aa);try r.last();aa.append( t 學(xué)號+ t + 姓名+ t +性別 + t +班級+ t +籍貫 + n);r.beforeFirst();while (r.next() aa.append(第+r.getRow()+ 行記錄:);aa.append(r.getString(學(xué)號);JFrame專業(yè).專注aa.append( t +r.getString(姓名);aa.appe nd(t+r.getStri ng( 性別);aa.appe nd(t+r.getStri ng( 班級);aa.appe nd(t+r.getStr
45、i ng( 籍貫)+n catch (Exception e)e.printStackTrace);public void Display On e(Str ing str22) throws Excepti on try Stateme nt DataBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);Res
46、ultSet r=s.executeQuery( select 學(xué)號 姓名,性別,班級名稱 as 班級,籍貫 from 學(xué)籍信息表join 班級信息表 on 班級信息表.班級號=學(xué)籍信息表.班級號 where 學(xué)號=+str22+ );/執(zhí)行查詢的 SQL 語句r.last();int cc=r.getRow();if (cc=0) JOptionPane.showMessageDialog( null ,未查詢到相關(guān)信息! );專業(yè).專注else r.beforeFirst();while (r.next() JOptionPane.showMessageDialog( null , +學(xué)號
47、:+r.getString(學(xué)號)+ + 姓名:+r.getString(姓名)+ + 性別:+r.getString(性別)+ + 班級:+r.getString(班級)+ +籍貫:+r.getString(籍貫)+ 已查詢到相關(guān)記錄!); catch (Exception e)e.pri ntStackTrace();public void DeleteXh(String str11)/執(zhí)行按學(xué)號刪除學(xué)生記錄的操作 try Stateme nt DataBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ecti on()
48、;Stateme nt s;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.executeQuery( select * from學(xué)籍信息表where 學(xué)號=+str11+ );r.last();if (r.getRow()=1)s.executeUpdate( delete from學(xué)籍信息表where 學(xué)號=+str11+ );JOptionPane.showMessageDialog( null,學(xué)生記錄刪除成功!);專業(yè).專注 els
49、e JOptionPane.showMessageDialog( null ,學(xué)籍系統(tǒng)中并無相關(guān)記錄! ); catch (Exception e) public void DeleteXm(String str13)/執(zhí)行按姓名刪除學(xué)生記錄的操作 try Stateme nt DataBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONC
50、UR_UPDATABLE);ResultSet r=s.executeQuery( select * from學(xué)籍信息表where 姓名=+str13+ );r.last();if (r.getRow()=1)s.executeUpdate( delete from學(xué)籍信息表where 姓名=+str13+ );JOptionPane.showMessageDialog( null ,學(xué)生記錄刪除成功! ); else JOptionPane.showMessageDialog( null ,學(xué)籍系統(tǒng)中并無相關(guān)記錄! ); catch (Exception e) public void Upd
51、ateXh(String xg,String str15,String str16)Conn ecti on con=DataBaseCreate.getC onn ecti on();專業(yè).專注try Stateme nt DataBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s
52、.executeQuery( select * from學(xué)籍信息表where 學(xué)號=+xg+ );r.last();if (r.getRow()=1) s.executeUpdate( update 學(xué)籍信息表 set +str15+ = +str16+ 學(xué)號=+xg+ );/直接執(zhí)行 SQL 語句修改JOptionPane.showMessageDialog( null,學(xué)生記錄修改成功!);else JOptionPane.showMessageDialog( null ,學(xué)籍系統(tǒng)中并無相關(guān)記錄!);catch (Exception e) JOptionPane.showMessageDi
53、alog( null ,學(xué)籍系統(tǒng)中并無相關(guān)記錄!); public void UpdateXm(String str18,String str19,String str20)try Stateme nt DataBaseCreate = n ull;Stateme nt s;s = con. createStateme nt(whereConn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;專業(yè).專注ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);R
54、esultSet r=s.executeQuery( select * from學(xué)籍信息表where 姓名=+str18+ );r.last();if (r.getRow()=1) s.executeUpdate( update 學(xué)籍信息表 set +str19+ = +str20+ where 姓 名=+str18+ );/直接執(zhí)行 SQL 語句修改JOptionPane.showMessageDialog( null ,學(xué)生記錄修改成功! );else JOptionPane.showMessageDialog( null,學(xué)籍系統(tǒng)中并無相關(guān)記錄!);catch (Exception e)
55、JOptionPane.showMessageDialog( null ,學(xué)籍系統(tǒng)中并無相關(guān)記錄!);public void AddScore(String xh,String kch, String cj)try Stateme nt DataBaseCreate = n ull;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);if (xh.equals( )|kch.equals( )|cj.equals( ) JOptionPane.showMessageDial
56、og( null , 輸入框不允許為空“);else ResultSet r=s.executeQuery( select * from成績信息表 where 學(xué)號=+xh+ ands = con. createStateme nt(專業(yè).專注課程號=+kch+ );r.last();int i=lnteger.parseInt(cj);if (r.getRow()=1) JOptionPane.showMessageDialog( null ,該學(xué)生該科成績已存在);else s.executeUpdate( insert into成績信息表values ( +xh+ , +kch+ , +
57、i+ );JOptionPane.showMessageDialog( null , + 學(xué)號:+xh+ + 課程號:+kch+ +成績:+cj+ 學(xué)生成績添加成功! ); catch (Exception e)JOptionPane.showMessageDialog( null ,成績輸入的學(xué)號或者課程號不存在! ); public void UpdateScore(String xh,String kch,String cj)try Stateme nt DataBaseCreate = n ull;Conn ecti on con=DataBaseCreate.getC onn ect
58、i on();Stateme nt s;Conn ecti on con=DataBaseCreate.getC onn ecti on();Stateme nt s;專業(yè).專注ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);if(xh.equals( )|kch.equals( )|cj.equals( ) JOptionPane.showMessageDialog( null 為空);else int i=lnteger.parseInt(cj);ResultSet r=s.executeQuery( select
59、* from成績信息表 whereand 課程號=+kch+ );r.last(); if(r.getRow()=1) s.executeUpdate( update 成績信息表 set 成績=+i+ =+xh+ and 課程號=+kch+ );JOptionPane.showMessageDialog( null ,學(xué)生成績修改成功! );else JOptionPane.showMessageDialog( null ,成績表中并無相關(guān)記錄!); catch (Exception e) JOptionPane.showMessageDialog( null,學(xué)籍系統(tǒng)中并無相關(guān)記錄! );
60、public voidDeleteScore(String xh,String kch) tryStateme nt DataBaseCreate = n ull;s = con. createStateme nt(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.executeQuery( select * from 成績信息表 where 學(xué)號=+xh+ and課程號=+kch+ );r.last();輸入框不允許學(xué)號=+xh+ where 學(xué)號專業(yè).專注if(r.getRow()=1)s.executeU
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度水果批發(fā)市場與零售終端收購合同范本3篇
- 《第一單元 認(rèn)識信息工具 第3課 病毒危害早預(yù)防》說課稿-2024-2025學(xué)年泰山版信息技術(shù)四年級上冊
- 第2課《憲法是根本法》說課稿-2024-2025學(xué)年道德與法治六年級上冊統(tǒng)編版
- Module7 Unit1 He spent about twenty-one hours in space(說課稿)-2023-2024學(xué)年外研版(三起)英語六年級下冊
- 16 麻雀 說課稿-2024-2025學(xué)年統(tǒng)編版語文四年級上冊
- 18 古詩三首 江南春 說課稿-2024-2025學(xué)年語文六年級上冊統(tǒng)編版001
- 高中信息技術(shù)選修2說課稿-2.2.2 圖形、圖像的加工方法4-教科版
- 2025年度辦公樓委托物業(yè)管理及節(jié)能減排協(xié)議書3篇
- Unit 1 You and Me Section A 3a-3d(1課時)說課稿-2024-2025學(xué)年人教版(2024)七年級英語上冊
- 第6單元 22 皇帝的新裝2024-2025學(xué)年新教材七年級語文上冊同步說課稿(統(tǒng)編版2024)河北專版
- 教師教學(xué)常規(guī)管理培訓(xùn)夯實教學(xué)常規(guī)強化教學(xué)管理PPT教學(xué)課件
- 公務(wù)員考試工信部面試真題及解析
- GB/T 15593-2020輸血(液)器具用聚氯乙烯塑料
- 2023年上海英語高考卷及答案完整版
- 西北農(nóng)林科技大學(xué)高等數(shù)學(xué)期末考試試卷(含答案)
- 金紅葉紙業(yè)簡介-2 -紙品及產(chǎn)品知識
- 《連鎖經(jīng)營管理》課程教學(xué)大綱
- 《畢淑敏文集》電子書
- 頸椎JOA評分 表格
- 定量分析方法-課件
- 朱曦編著設(shè)計形態(tài)知識點
評論
0/150
提交評論