版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 設(shè)計(jì)(論文)題目</b></p><p> 專 業(yè) 系: </p><p> 學(xué)生姓名: </p><p> 專業(yè)班級(jí): </p><p> 學(xué)
2、 號(hào): </p><p> 指導(dǎo)教師: </p><p> 2012 年 4月 26 日</p><p><b> 目 錄</b></p><p> 摘要...................................
3、.................................1</p><p> 1. 學(xué)生信息管理系統(tǒng)概述4</p><p> 1.1 研究背景4</p><p> 1.2 開(kāi)發(fā)意義4</p><p> 2. 系統(tǒng)需求分析5</p><p> 2.1 開(kāi)發(fā)環(huán)境和軟件5</p>
4、;<p> 2.2 系統(tǒng)設(shè)計(jì)與功能分析5</p><p> 3 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p> 3.1 系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì)6</p><p> 3.2 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)7</p><p> 3.3 數(shù)據(jù)庫(kù)實(shí)現(xiàn)8</p><p> 3.3.1 數(shù)據(jù)庫(kù)關(guān)系圖8</p&
5、gt;<p> 3.3.2 SQL語(yǔ)句實(shí)現(xiàn)9</p><p> 4. 系統(tǒng)模塊詳細(xì)設(shè)計(jì)11</p><p> 4.1用戶登錄模塊11</p><p> 4.2 各用戶操作模塊12</p><p> 4.2.1 管理員操作模塊12</p><p> 4.2.2 教師操作模塊
6、12</p><p> 4.2.3 學(xué)生操作模塊12</p><p> 5. 系統(tǒng)運(yùn)行與測(cè)試13</p><p> 5.1 管理員登錄13</p><p> 5.2 教師登錄15</p><p> 5.3 學(xué)生登錄21</p><p> 6.附錄(代碼)23</
7、p><p><b> 摘要</b></p><p> 學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢,更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語(yǔ)言編寫,用SQLServer數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用SQL語(yǔ)句完成學(xué)生學(xué)籍信息的添加,查詢,修改,刪除的操作以及成績(jī)的錄入,修改,刪除等。用ODBC驅(qū)動(dòng)實(shí)現(xiàn)前臺(tái)Java與后臺(tái)S
8、QL數(shù)據(jù)庫(kù)的連接。Java語(yǔ)言跨平臺(tái)性強(qiáng),可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡(jiǎn)單,安全性好。SQLServer2005數(shù)據(jù)庫(kù)高效安全,兩者結(jié)合可相互利用各自的優(yōu)勢(shì)。本學(xué)生信息管理系統(tǒng)包括學(xué)生信息管理,教師信息管理,賬號(hào)信息管理,班級(jí)信息管理,課程信息管理,成績(jī)信息管理六大模塊</p><p> 關(guān)鍵字:java;sql;學(xué)生管理系統(tǒng)</p><p><
9、b> 學(xué)生信息管理系統(tǒng)</b></p><p> 1. 學(xué)生信息管理系統(tǒng)概述</p><p><b> 1.1 研究背景</b></p><p> 學(xué)生信息管理系統(tǒng)是學(xué)校管理的重要工具,是學(xué)校不可或缺的部分。 隨著在校大學(xué)生人數(shù)的不斷增加,教務(wù)系統(tǒng)的數(shù)量也不斷的上漲,。學(xué)校工作繁雜、資料眾多,人工管理信息的難度也越來(lái)
10、越大,顯然是不能滿足實(shí)際的需要,效率也是很低的。并且這種傳統(tǒng)的方式存在著很多的弊端,如:保密性差、查詢不便、效率低,很難維護(hù)和更新等。然而,本系統(tǒng)針對(duì)以上缺點(diǎn)能夠極大地提高學(xué)生信息管理的效率,也是科學(xué)化、正規(guī)化的管理,與世界接軌的重要條件。所以如何自動(dòng)高效地管理信息是這些年來(lái)許多人所研究的。</p><p><b> 1.2 開(kāi)發(fā)意義</b></p><p>
11、隨著這些年電腦計(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è)系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速的查詢,從而減少管理方面的工作量?毋庸置疑,切實(shí)有效地把計(jì)算機(jī)管理引入學(xué)校教務(wù)管理中,對(duì)于促進(jìn)學(xué)校
12、管理制度,提高學(xué)校教學(xué)質(zhì)量與辦學(xué)水平有著顯著意義?</p><p><b> 2. 系統(tǒng)需求分析</b></p><p> 2.1 開(kāi)發(fā)環(huán)境和軟件</p><p> ?。?) 操作系統(tǒng):Windows 7</p><p> (2) 數(shù)據(jù)庫(kù)軟件:SQL Server 2005</p><p>
13、; (3) Java開(kāi)發(fā)工具:Eclipse</p><p> 2.2 系統(tǒng)設(shè)計(jì)與功能分析</p><p> 學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢,更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語(yǔ)言編寫,用SQLServer2005數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用SQL語(yǔ)句完成學(xué)生學(xué)籍信息的添加,查詢,修改,刪除的操作以及成績(jī)的錄入,修
14、改,刪除等。用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ì)。</p><p> 該系統(tǒng)實(shí)現(xiàn)的大致功能:</p><p> 用戶登陸界面。該界面可以選擇使用者的身份,“管理員,教師,學(xué)生”。不同的身份有不同
15、的操作界面和功能權(quán)限。ID號(hào)和密碼輸入正確即可登錄。學(xué)生管理界面。提供了學(xué)生學(xué)籍信息的查詢,相關(guān)科目的成績(jī)查詢和排名,修改登錄密碼等功能。</p><p> 教師管理界面。提供了對(duì)學(xué)生學(xué)籍信息的查詢,添加,修改,刪除;學(xué)生成績(jī)的錄入,修改,刪除,查詢班級(jí)排名。修改密碼等功能。</p><p> 管理員管理界面。擁有最高的權(quán)限。允許添加教師信息和課程信息等。</p><
16、;p> 登錄的用戶信息分別存儲(chǔ)在SQL數(shù)據(jù)庫(kù)的“管理員信息表”, “教師信息表”, “學(xué)籍信息表”中,如果用戶信息不存在則三張表中,將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。</p><p> 保證了本學(xué)生管理系統(tǒng)的安全性。</p><p><b> 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 3.1 系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì)</p><
17、p><b> 實(shí)體屬性表:</b></p><p> 3.2 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p><b> 教師信息表:</b></p><p><b> 課程信息表:</b></p><p><b> 班級(jí)信息表:</b></p&g
18、t;<p><b> 管理員信息表:</b></p><p><b> 成績(jī)信息表:</b></p><p><b> 學(xué)籍信息表:</b></p><p> 3.3 數(shù)據(jù)庫(kù)實(shí)現(xiàn)</p><p> 3.3.1 數(shù)據(jù)庫(kù)關(guān)系圖</p>&l
19、t;p><b> SQL語(yǔ)句實(shí)現(xiàn)</b></p><p><b> 數(shù)據(jù)表的創(chuàng)建:</b></p><p> ?。?)教師信息表創(chuàng)建:</p><p> create table 教師信息表(</p><p> 教師ID varchar(8) primary key ,</p&g
20、t;<p> 教師姓名varchar(8) not null unique,</p><p> 登錄密碼varchar(8) not null,</p><p><b> )</b></p><p> ?。?)課程信息表創(chuàng)建:</p><p> create table 課程信息表(</p&g
21、t;<p> 課程號(hào)varchar(8) primary key,</p><p> 課程名稱varchar(12) not null,</p><p> 教師ID varchar(8) not null</p><p> foreign key(教師ID) references 教師信息表(教師ID) </p><p>
22、;<b> )</b></p><p> ?。?)班級(jí)信息表創(chuàng)建:</p><p> create table 班級(jí)信息表(</p><p> 班級(jí)號(hào)varchar(8) not null primary key,</p><p> 班級(jí)名稱varchar(8) not null unique,</p>
23、;<p> 所屬學(xué)院varchar(8) ,</p><p> 班級(jí)人數(shù) nchar(4) </p><p><b> )</b></p><p> ?。?)學(xué)籍信息表創(chuàng)建:</p><p> create table 學(xué)籍信息表(</p><p> 學(xué)號(hào)varchar(1
24、5) primary key,</p><p> 姓名varchar(8) not null ,</p><p> 性別varchar(4) ,</p><p> 班級(jí)號(hào)varchar(8) not null ,</p><p> 籍貫varchar(5) ,</p><p> 登錄密碼varchar(6)
25、not null</p><p> foreign key (班級(jí)號(hào)) references 班級(jí)信息表(班級(jí)號(hào))</p><p><b> )</b></p><p> ?。?)成績(jī)信息表創(chuàng)建:</p><p> create table 成績(jī)信息表(</p><p> 學(xué)號(hào)varcha
26、r(15),</p><p> 課程號(hào)varchar(8),</p><p> 成績(jī)smallint </p><p> primary key(學(xué)號(hào),課程號(hào))</p><p> foreign key (學(xué)號(hào)) references 學(xué)籍信息表(學(xué)號(hào)),</p><p> foreign key (課程號(hào))
27、 references 課程信息表(課程號(hào))</p><p><b> ?。?lt;/b></p><p> ?。?)管理員信息表創(chuàng)建:</p><p> create table 課程信息表(</p><p> 管理員ID varchar(8) primary key,</p><p> 登錄密
28、碼 varchar(12) not null</p><p><b> ?。?lt;/b></p><p><b> 視圖的創(chuàng)建:</b></p><p> (1)“教師課程詳細(xì)信息”視圖創(chuàng)建:</p><p> create view 教師課程詳細(xì)信息</p><p>&l
29、t;b> as</b></p><p> SELECT 教師信息表.教師ID,教師信息表.教師姓名,課程信息表.課程號(hào),課程信息表.課程名稱,</p><p> 教師信息表.登錄密碼</p><p> FROM 教師信息表</p><p> JOIN 課程信息表 ON 教師信息表.教師ID =課程信息表.教
30、師ID</p><p> (2) “學(xué)生成績(jī)信息”視圖創(chuàng)建:</p><p> create view 學(xué)生成績(jī)信息</p><p><b> as</b></p><p> SELECT 學(xué)籍信息表.學(xué)號(hào),學(xué)籍信息表.姓名,學(xué)籍信息表.性別,</p><p> 課程信息表.課程名稱,
31、成績(jī)信息表.成績(jī)</p><p> FROM 成績(jī)信息表</p><p> JOIN 學(xué)籍信息表 ON 成績(jī)信息表.學(xué)號(hào) = 學(xué)籍信息表.學(xué)號(hào)</p><p> JOIN 班級(jí)信息表 ON 班級(jí)信息表.班級(jí)號(hào) = 學(xué)籍信息表.班級(jí)號(hào)</p><p> JOIN 課程信息表 ON 課程信息表.課程號(hào) = 成績(jī)信息表.課程號(hào)
32、</p><p><b> 存儲(chǔ)過(guò)程創(chuàng)建:</b></p><p> (1)“單科成績(jī)排名”創(chuàng)建:</p><p> create proc [dbo].[單科成績(jī)排名]</p><p> @kechenname char(8),</p><p> @classname char(8)
33、</p><p><b> as</b></p><p> select 學(xué)籍信息表.學(xué)號(hào),姓名,成績(jī) </p><p> from 成績(jī)信息表 </p><p> join 課程信息表on 課程信息表.課程號(hào)=成績(jī)信息表.課程號(hào) </p><p> join 學(xué)籍信息表on 學(xué)籍信息
34、表.學(xué)號(hào)=成績(jī)信息表.學(xué)號(hào)</p><p> join 班級(jí)信息表on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào) </p><p> where 課程名稱=@kechenname and 班級(jí)名稱=@classname</p><p> order by 成績(jī)desc</p><p> (2)“全班排名”創(chuàng)建:</p>
35、<p> create proc [dbo].[全班排名]</p><p> @class char(8)</p><p><b> as</b></p><p> select 學(xué)籍信息表.學(xué)號(hào),姓名, avg(成績(jī)) as 平均分,sum(成績(jī)) as 總分 </p><p> from 成績(jī)
36、信息表 </p><p> join 學(xué)籍信息表 on 成績(jī)信息表.學(xué)號(hào)=學(xué)籍信息表.學(xué)號(hào)</p><p> join 班級(jí)信息表 on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào)</p><p> where 班級(jí)信息表.班級(jí)名稱=@class</p><p> group by 學(xué)籍信息表.姓名,學(xué)籍信息表.學(xué)號(hào) </
37、p><p> order by avg(成績(jī)) desc,學(xué)籍信息表.學(xué)號(hào)</p><p> 4. 系統(tǒng)模塊詳細(xì)設(shè)計(jì)</p><p><b> 用戶登錄模塊</b></p><p> 4.2 各用戶操作模塊</p><p> 4.2.1 管理員操作模塊(圖1)</p>&
38、lt;p> 4.2.2 教師操作模塊(圖2)</p><p> 圖1 圖2</p><p> 4.2.3 學(xué)生操作模塊</p><p> 5. 系統(tǒng)運(yùn)行與測(cè)試</p><p><b> 5.1 管理員登錄</b></p><p
39、> 點(diǎn)擊“管理員”按鈕。輸入正確的ID和密碼。驗(yàn)證成功則可進(jìn)入管理員管理界面。</p><p> 管理員ID號(hào)和登錄密碼存在數(shù)據(jù)庫(kù)中的管理員信息表。表中存在的管理員才允許登錄。</p><p> ?。?)添加教師信息。在彈出的輸入欄中輸入正確的數(shù)據(jù)。</p><p> 如果輸入重復(fù)的信息則會(huì)彈出。 </p><p>
40、如果某項(xiàng)未填則彈出。 </p><p> 輸入的數(shù)據(jù)會(huì)分別寫進(jìn)“教師信息表”和“課程信息表”中。</p><p> 增加的教師信息,允許讓更多的教師登錄本系統(tǒng)進(jìn)行管理操作!</p><p><b> ?。?)修改教師信息</b></p><p> 如果要修改的教師信息不存在,則 </p>
41、<p><b> (3)刪除信息修改</b></p><p> 輸入的教師信息不存在,則 </p><p><b> (4)查詢教師信息</b></p><p><b> 5.2 教師登錄</b></p><p> 在登錄界面選擇“教師”按鈕,并輸入正
42、確的ID號(hào)和密碼,即可登錄成功!</p><p> 輸入錯(cuò)誤則會(huì)彈出提示!</p><p> ID號(hào)輸入正確,登錄成功!進(jìn)入教師管理的操作界面:</p><p> ?。?)顯示學(xué)生信息。 </p><p><b> ?。?)添加學(xué)生信息</b></p><p> 新添加的信息會(huì)保存在學(xué)籍信息
43、表中!</p><p> 如果輸入的信息已經(jīng)存在,則顯示 </p><p> 如果輸入的數(shù)據(jù)正確,則 </p><p> ?。?)修改學(xué)生信息,輸入正確則顯示!</p><p> (4) 刪除學(xué)生信息,</p><p><b> (5)錄入學(xué)生成績(jī)</b></p><
44、;p><b> (6)修改學(xué)生成績(jī)</b></p><p> (7) 刪除學(xué)生成績(jī)</p><p><b> ?。?)查詢學(xué)生成績(jī)</b></p><p><b> (9)所有成績(jī)排名</b></p><p> ?。?0)單科成績(jī)排名</p><
45、p> ?。?1)更改登錄密碼</p><p> 修改成功后即可用新的密碼進(jìn)行登錄!</p><p><b> 5.3 學(xué)生登錄</b></p><p> 輸入正確的ID號(hào)和密碼,即可正常登錄!</p><p><b> 顯示學(xué)生信息</b></p><p>&
46、lt;b> 查詢個(gè)人成績(jī)</b></p><p><b> ?。?)單科成績(jī)排名</b></p><p><b> ?。?)全班成績(jī)排名</b></p><p><b> ?。?)修改密碼</b></p><p> 修改密碼后會(huì)更新學(xué)生學(xué)籍表里面的登錄密碼
47、,下次就可以用新密碼登錄。</p><p> 點(diǎn)擊 后,就可以安全退出學(xué)生管理系統(tǒng)了!</p><p><b> 7.附錄(代碼)</b></p><p> 登陸界面與主功能界面:</p><p> public class Sql extends JFrame implements ActionListen
48、er{</p><p> JFrame mm=new JFrame("您好!請(qǐng)您先登錄!");</p><p> JTextField t2=new JTextField(null,15);</p><p> JTextField t4=new JPasswordField(null,15);</p><p> p
49、ublic String zh=null;</p><p> JRadioButton b=new JRadioButton("教師");</p><p> JRadioButton b1=new JRadioButton("學(xué)生");</p><p> JRadioButton b2=new JRadioButton(
50、"管理員");</p><p> public void jiemian(){</p><p> mm.setSize(300,340);</p><p> mm.setVisible(true);</p><p> mm.setLocation(200,300);</p><p> mm
51、.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</p><p> JLabel t1=new JLabel("ID號(hào):");</p><p> JLabel t3=new JLabel("密碼:");</p><p> JButton denglu2=new JButto
52、n("登錄");</p><p> denglu2.setContentAreaFilled(false);</p><p> Container n=mm.getContentPane();</p><p> n.setLayout(null);</p><p> t1.setBounds(42,125,75,3
53、5);</p><p> t2.setBounds(80,125,150,35);</p><p> t3.setBounds(40,180,75,35);</p><p> t4.setBounds(80,180,150,35);</p><p> denglu2.setBounds(102,245,70,30);</p>
54、;<p> n.add(t1);n.add(t2); n.add(t3); n.add(t4); n.add(denglu2);</p><p> b.setBounds(130,85,70,30);</p><p> b1.setBounds(70,85,70,30);</p><p> b2.setBounds(190,85,70,30);
55、</p><p> ButtonGroup rg=new ButtonGroup(); </p><p> b.setSelected(false);</p><p> b1.setSelected(true);</p><p> b1.setSelected(false);</p><p> n.add(b
56、); n.add(b2); rg.add(b2); rg.add(b); n.add(b1); rg.add(b1);</p><p> b.setContentAreaFilled(false);</p><p> b1.setContentAreaFilled(false);</p><p> b2.setContentAreaFilled(false);
57、</p><p> denglu2.addActionListener(this);</p><p><b> }</b></p><p> public void actionPerformed(ActionEvent e) {</p><p> JButton denglu2=(JButton)e.getSo
58、urce();</p><p> if(b.isSelected()) { </p><p> zh=t2.getText(); </p><p> String mima=t4.getText();</p><p><b> try { </b></p><p> Class.fo
59、rName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement(</p><p> Re
60、sultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQuery("select * from 教師信息表 where 教師ID='"+zh+"' and 登錄密碼='"+mi
61、ma+"'"); </p><p> r.last();</p><p> if(r.getRow()==1)</p><p> { mm.setVisible(false);</p><p> r.beforeFirst();</p><p> while(r.ne
62、xt()){ </p><p> JOptionPane.showMessageDialog( null ,r.getString("教師姓名")+"老師!您好!歡迎登錄教師管理系統(tǒng)!" ) ; }</p><p> JFrame mmm=new JFrame();</p><p> mmm.setSize(400,
63、420);</p><p> mmm.setVisible(true);</p><p> mmm.setLocation(200,300);</p><p> mmm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</p><p> JLabel aaa=new JLabel(&quo
64、t;學(xué)生信息管理:");JLabel aaa1=new JLabel("學(xué)生成績(jī)管理:");</p><p> JButton b1=new JButton("顯示學(xué)生信息");b1.setBounds(40,45,140,30);</p><p> JButton b2=new JButton("添加學(xué)生信息");
65、b2.setBounds(200,45,140,30);</p><p> JButton b3=new JButton("修改學(xué)生信息");b3.setBounds(40,90,140,30);</p><p> JButton b4=new JButton("刪除學(xué)生信息");b4.setBounds(200,90,140,30);</
66、p><p> JButton b5=new JButton("錄入學(xué)生成績(jī)");b5.setBounds(40,170,140,30);</p><p> JButton b6=new JButton("修改學(xué)生成績(jī)");b6.setBounds(200,170,140,30);</p><p> JButton b7=ne
67、w JButton("刪除學(xué)生成績(jī)");b7.setBounds(40,215,140,30);</p><p> JButton b8=new JButton("查詢學(xué)生成績(jī)");b8.setBounds(200,215,140,30);</p><p> JButton b9=new JButton("所有成績(jī)排名");b
68、9.setBounds(40,260,140,30);</p><p> JButton b12=new JButton("單科成績(jī)排名");b12.setBounds(200,260,140,30);</p><p> JButton b10=new JButton("退出系統(tǒng)");b10.setBounds(60,325,100,30);&l
69、t;/p><p> JButton b11=new JButton("修改密碼");b11.setBounds(220,325,100,30);</p><p> aaa.setBounds(15,15,90,30); aaa1.setBounds(15,140,90,30);</p><p> Container n=mmm.getConte
70、ntPane();</p><p> n.setLayout(null);</p><p> J_ActionListener1 a1=new J_ActionListener1();</p><p> J_ActionListener2 a2=new J_ActionListener2(); </p><p> J_ActionLi
71、stener3 a3=new J_ActionListener3(); </p><p> J_ActionListener4 a4=new J_ActionListener4(); </p><p> J_ActionListener5 a5=new J_ActionListener5(); </p><p> J_ActionListener7 a7=ne
72、w J_ActionListener7(); </p><p> J_ActionListener8 a8=new J_ActionListener8(); </p><p> J_ActionListener9 a9=new J_ActionListener9(); </p><p> J_ActionListener10 a10=new J_ActionL
73、istener10(); </p><p> J_ActionListener12 a12=new J_ActionListener12();</p><p> J_ActionListener11 a11=new J_ActionListener11(); </p><p> n.add(b1);n.add(b2);n.add(b3);n.add(b4);n
74、.add(b5);n.add(b6);</p><p> n.add(b7);n.add(b8);n.add(b9);n.add(b10);n.add(aaa);n.add(aaa1);</p><p> n.add(b11);n.add(b12);b1.addActionListener(a1);b2.addActionListener(a2);</p><p&g
75、t; b3.addActionListener(a3);b4.addActionListener(a4);b5.addActionListener(a5);</p><p> b6.addActionListener(a7);b7.addActionListener(a8);b8.addActionListener(a9);</p><p> b9.addActionListener
76、(a10); b11.addActionListener(a1)b12.addActionListener(a12);</p><p> b10.addActionListener(new ActionListener() </p><p> {public void actionPerformed(final ActionEvent e)</
77、p><p> { System.exit(0); } </p><p><b> });</b></p><p> ((JComponent) mmm.getContentPane()).setOpaque(false); </p><p> java.net.URL url = Sql.cla
78、ss.getResource("未命名.jpg");</p><p> ImageIcon img = new ImageIcon(url);</p><p> JLabel background = new JLabel(img);</p><p> mmm.getLayeredPane().add(background, new Int
79、eger(Integer.MIN_VALUE));</p><p> background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());</p><p><b> }</b></p><p> else{ JOptionPane.showMessageDialog(
80、 null ,"教師ID或密碼有誤!請(qǐng)重新輸入!") ; }</p><p><b> }</b></p><p> catch(Exception e1)</p><p> { e1.printStackTrace(); }</p><p><b>
81、; }}</b></p><p> public static void main(String args[]){</p><p> Sql app=new Sql();</p><p> app.jiemian(); </p><p><b> }</b></p><p&g
82、t;<b> }</b></p><p> 向數(shù)據(jù)庫(kù)添加新的學(xué)生信息:</p><p> class DataBase{ // DataBase類</p><p> public void Add(String xh,String xm,String xb,String bj,String jg,String mm)
83、throws SQLException { //為學(xué)籍管理系統(tǒng)添加新記錄</p><p><b> try {</b></p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> Connection c=DriverManager.getCo
84、nnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQ
85、uery("select * from 學(xué)籍信息表 where 學(xué)號(hào)='"+xh+"'");</p><p> r.last(); </p><p> if(r.getRow()==1) </p>&
86、lt;p> { JOptionPane.showMessageDialog( null ,"該學(xué)號(hào)的學(xué)生信息已存在");} </p><p> Else if(xh.equals("")){ //判斷新輸入的學(xué)號(hào)是否為空</p><p> JOptionPane.showMessageDialog( null
87、 ,"學(xué)號(hào)不能為空");} </p><p> else{ s.executeUpdate(" insert into 學(xué)籍信息表 values ('"+xh+"','"+xm+"','"+xb+"','"+ bj+&
88、quot;','"+jg+"','"+mm+"')"); </p><p> s.close();c.close();</p><p> JOptionPane.showMessageDialog( null ,"<html>"+"學(xué)號(hào):"
89、+xh+"<br>"+"姓名:"+xm+"<br>" +"性別:"+xb+"<br>"+"班級(jí)號(hào):"+bj+"<br>" +"籍貫:"+jg+"<br>" </p><p>
90、 +"登錄密碼:"+mm+"<br>學(xué)生記錄添加成功!" ) ; }</p><p><b> }</b></p><p> catch (ClassNotFoundException e) </p&
91、gt;<p> {JOptionPane.showMessageDialog( null , "數(shù)據(jù)添加異常!" ) ;}</p><p><b> }</b></p><p> public void DisplayAll(ResultSet r){
92、 JFrame m=new JFrame("顯示所有學(xué)生信息");</p><p> m.setBounds(60,70,700,600);</p><p> m.setVisible(true);</p><p> JTextArea aa=new JTextArea();aa.setBounds(0,0,700,600);&l
93、t;/p><p> Container c1=m.getContentPane();</p><p> c1.setLayout(null);</p><p> c1.add(aa);</p><p> try{ r.last();</p><p> aa.append("\t學(xué)號(hào)"
94、+"\t"+" 姓名"+"\t"+"性別"+"\t"+"班級(jí)"+"\t"+"籍貫"+"\n");</p><p> r.beforeFirst();</p><p> while(r.next())<
95、/p><p> { aa.append("第"+r.getRow()+"行記錄: ");</p><p> aa.append(r.getString("學(xué)號(hào)"));</p><p> aa.append("\t"+r.getString("姓名"));<
96、/p><p> aa.append("\t"+r.getString("性別"));</p><p> aa.append("\t"+r.getString("班級(jí)"));</p><p> aa.append("\t"+r.getString("籍貫&q
97、uot;)+"\n");</p><p><b> } }</b></p><p> catch(Exception e)</p><p> { e.printStackTrace();} }</p><p> public void DisplayOne(String str22) t
98、hrows Exception </p><p><b> { try</b></p><p> { Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStat
99、ement( </p><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQuery("select 學(xué)號(hào) ,姓名,性別, 班級(jí)名稱 as 班級(jí),籍貫 from 學(xué)籍信息表 jo
100、in 班級(jí)信息表 on 班級(jí)信息表.班級(jí)號(hào)=學(xué)籍信息表.班級(jí)號(hào) where 學(xué)號(hào)='"+str22+"'"); //執(zhí)行查詢的SQL語(yǔ)句</p><p> r.last(); </p><p> int cc=r.getRow();</p><p><b> if(cc==0)<
101、/b></p><p> {JOptionPane.showMessageDialog( null ,"未查詢到相關(guān)信息!" ) ; } else{r.beforeFirst();</p><p> while(r.next())</p><p> { JOptionPane.showMe
102、ssageDialog( null ,"<html>"+" 學(xué)號(hào):"+r.getString("學(xué)號(hào)")+"<br>"+"姓名:"+r.getString("姓名")+"<br>"</p><p> +"性別:"+r
103、.getString("性別")+"<br>" +"班級(jí):"+r.getString("班級(jí)")+"<br>"</p><p> +"籍貫:"+r.getString("籍貫")+"<br> 已查詢到相關(guān)記錄!" )
104、;</p><p><b> } } }</b></p><p> catch(Exception e)</p><p> { e.printStackTrace();}}</p><p> public void DeleteXh(String str11) //執(zhí)行按學(xué)號(hào)刪除學(xué)生記錄的
105、操作</p><p><b> { try </b></p><p> { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)&qu
106、ot;);</p><p> Statement s=c.createStatement(</p><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQuery("
107、select * from 學(xué)籍信息表 where 學(xué)號(hào)='"+str11+"'"); </p><p><b> r.last();</b></p><p> if(r.getRow()==1){ </p><p> s.executeUpdate(&quo
108、t;delete from 學(xué)籍信息表 where 學(xué)號(hào)='"+str11+"'"); </p><p> JOptionPane.showMessageDialog( null , "學(xué)生記錄刪除成功!" ) ; </p><p> } else { JOptionPane.showMessageDialog
109、( null ,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!" ); } </p><p><b> }</b></p><p> catch(Exception e)</p><p><b> { } }</b></p><p> public void DeleteXm(St
110、ring str13) //執(zhí)行按姓名刪除學(xué)生記錄的操作</p><p><b> { try </b></p><p> {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> Connection c=DriverManager.
111、getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement(</p><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p
112、> ResultSet r=s.executeQuery("select * from 學(xué)籍信息表 where 姓名='"+str13+"'"); </p><p><b> r.last();</b></p><p> if(r.getRow()==1)
113、 </p><p> {s.executeUpdate("delete from 學(xué)籍信息表 where 姓名='"+str13+"'"); </p><p> JOptionPane.showMessageDialog( null , "學(xué)生記錄刪除成功!" )
114、 ;} </p><p> else{ JOptionPane.showMessageDialog( null ,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!" ) ; } </p><p><b> }</b></p><p> catch(Exception e)</p><p&
115、gt;<b> { } }</b></p><p> public void UpdateXh(String xg,String str15,String str16) </p><p><b> {</b></p><p><b> try { </b></p>
116、<p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p> Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement(</p
117、><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQuery("select * from 學(xué)籍信息表 where 學(xué)號(hào)='"+xg+"'")
118、; r.last();</p><p> if(r.getRow()==1)</p><p> { s.executeUpdate("update 學(xué)籍信息表 set "+str15+"='"+str16+"' where 學(xué)號(hào)='"+xg+"'
119、;"); //直接執(zhí)行SQL語(yǔ)句修改 </p><p> JOptionPane.showMessageDialog( null , "學(xué)生記錄修改成功!" ) ; } else{</p><p> JOptionPane.showMessageDialog( null ,&q
120、uot;學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!" ) ; }; }</p><p> catch(Exception e)</p><p> { JOptionPane.showMessageDialog( null ,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!" ) ; </p><p><b> } }&l
121、t;/b></p><p> public void UpdateXm(String str18,String str19,String str20) {</p><p><b> try { </b></p><p> Class.forName("sun.jdbc.odbc.JdbcOdbc
122、Driver");</p><p> Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement(</p><p> ResultSet.TYPE_SCROLL_SENSITIVE,<
123、/p><p> ResultSet.CONCUR_UPDATABLE);</p><p> ResultSet r=s.executeQuery("select * from 學(xué)籍信息表 where 姓名='"+str18+"'"); </p><p> r.last();</p>
124、<p> if(r.getRow()==1)</p><p> { s.executeUpdate("update 學(xué)籍信息表 set "+str19+"='"+str20+"' where 姓名='"+str18+"'"); //直接執(zhí)行SQL語(yǔ)句修改
125、 </p><p> JOptionPane.showMessageDialog( null , "學(xué)生記錄修改成功!" ) ; }</p><p><b> else{</b></p><p> JOptionPane.showMessageDialog( null ,"學(xué)籍
126、系統(tǒng)中并無(wú)相關(guān)記錄!" ) ; }; }</p><p> catch(Exception e)</p><p> {JOptionPane.showMessageDialog( null ,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!" ) ; </p><p><b> }}</
127、b></p><p> public void AddScore(String xh,String kch, String cj){</p><p><b> try {</b></p><p> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p>
128、<p> Connection c=DriverManager.getConnection("jdbc:odbc:學(xué)生信息系統(tǒng)");</p><p> Statement s=c.createStatement( </p><p> ResultSet.TYPE_SCROLL_SENSITIVE,</p><p> Result
129、Set.CONCUR_UPDATABLE);</p><p> if(xh.equals("")||kch.equals("")||cj.equals("")){ JOptionPane.showMessageDialog( null ,"輸入框不允許為空"); }</p><p> else{
130、 ResultSet r=s.executeQuery("select * from 成績(jī)信息表 where 學(xué)號(hào)='"+xh+"' and 課程號(hào)='"+kch+"'");</p><p> r.last(); </p><p> int i=Integer.parseInt(cj);<
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生管理系統(tǒng)畢業(yè)論文 (2)
- 畢業(yè)論文——學(xué)生管理系統(tǒng) (2)
- 畢業(yè)論文——學(xué)生信息管理系統(tǒng) (2)
- 學(xué)生信息管理系統(tǒng)畢業(yè)論文 (2)
- 學(xué)生成績(jī)管理系統(tǒng)畢業(yè)論文 (2)
- 學(xué)生成績(jī)管理系統(tǒng)畢業(yè)論文 (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——畢業(yè)論文管理系統(tǒng) (2)
- 畢業(yè)論文——學(xué)生管理系統(tǒng)
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——學(xué)生管理系統(tǒng)
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文 ----學(xué)生管理系統(tǒng)
- 學(xué)生管理系統(tǒng)-畢業(yè)論文
- 學(xué)生管理系統(tǒng)-畢業(yè)論文
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 學(xué)生管理系統(tǒng)畢業(yè)論文
- 學(xué)生管理管理系統(tǒng)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論