計(jì)算機(jī)學(xué)院管理信息課程設(shè)計(jì)---學(xué)生學(xué)籍管理系統(tǒng)_第1頁(yè)
已閱讀1頁(yè),還剩46頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  目錄</b></p><p>  第一章 系統(tǒng)概述1</p><p>  第二章 系統(tǒng)需求分析2</p><p>  2.1 系統(tǒng)設(shè)計(jì)思想2</p><p>  2.2 學(xué)校工作流程分析2</p><p>  2.3 用戶具體需求分析2</p&g

2、t;<p>  2.4 系統(tǒng)設(shè)計(jì)分析3</p><p>  2.5 系統(tǒng)功能分析3</p><p>  2.6 系統(tǒng)功能模塊圖4</p><p>  2.7擬實(shí)現(xiàn)的簡(jiǎn)單操作界面4</p><p>  2.8UML建模9</p><p>  2.8.1用例圖9</p>

3、<p>  2.8.2活動(dòng)圖9</p><p>  2.9數(shù)據(jù)流圖10</p><p>  第三章數(shù)據(jù)庫(kù)設(shè)計(jì)13</p><p>  3.1 概念結(jié)構(gòu)設(shè)計(jì)13</p><p>  3.1.1 E-R圖13</p><p>  3.2 邏輯結(jié)構(gòu)設(shè)計(jì)14</p><p>

4、;  3.3 流程圖15</p><p>  3.4 數(shù)據(jù)字典17</p><p>  3.5 物理結(jié)構(gòu)設(shè)計(jì)17</p><p>  第四章系統(tǒng)實(shí)現(xiàn)20</p><p>  4.1 系統(tǒng)測(cè)試20</p><p>  4.2 系統(tǒng)運(yùn)行結(jié)果截圖20</p><p>  4.3 程

5、序代碼27</p><p>  第五章 總 結(jié)44</p><p><b>  參考文獻(xiàn)45</b></p><p><b>  第一章 系統(tǒng)概述</b></p><p>  隨著信息技術(shù)在管理上越來(lái)越深如而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已經(jīng)逐步成熟。管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型

6、學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動(dòng)有機(jī)地組織起來(lái),就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。學(xué)生學(xué)籍管理系統(tǒng)是一個(gè)教育單位不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以學(xué)籍管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以?lái)人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難

7、。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生學(xué)籍進(jìn)行管理,具有手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生學(xué)籍管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。</p><p>  本系統(tǒng)是一個(gè)典型的信息管理系統(tǒng),主要完成對(duì)學(xué)生基本信息、班級(jí)信息、課程信息、成績(jī)信息等多種數(shù)據(jù)信息的管理,包括數(shù)據(jù)庫(kù)中表的錄入、修改、刪除等

8、。系統(tǒng)還可以完成對(duì)各類信息的查詢、錄入、修改、刪除等功能,其中學(xué)籍管理用戶包括系統(tǒng)管理員、普通用戶,普通用戶包括教師和學(xué)生。</p><p>  由于本系統(tǒng)管理的對(duì)象單一,都是學(xué)生,且每個(gè)數(shù)據(jù)內(nèi)容具有較強(qiáng)的關(guān)聯(lián)性,涉及的計(jì)算過(guò)程不是很復(fù)雜。因此,比較適合于采用數(shù)據(jù)庫(kù)管理。</p><p>  本系統(tǒng)是在WindowsXP 系統(tǒng)的環(huán)境下開(kāi)發(fā)的,所采用的開(kāi)發(fā)語(yǔ)言是Java語(yǔ)言,使用的開(kāi)發(fā)工具為

9、: MyEclipse6.0,采用Microsoft SQL Server 2000數(shù)據(jù)庫(kù)管理系統(tǒng)。</p><p>  第二章 系統(tǒng)需求分析</p><p>  2.1 系統(tǒng)設(shè)計(jì)思想</p><p>  1.采用現(xiàn)有的資源,先進(jìn)的管理系統(tǒng)開(kāi)發(fā)方案,充分利用學(xué)?,F(xiàn)有的資源, 減少開(kāi)發(fā)中的時(shí)間和財(cái)力、物力、提高系統(tǒng)開(kāi)發(fā)的水平和應(yīng)用效果。</p>&l

10、t;p>  2.系統(tǒng)滿足學(xué)校的需求,例如學(xué)生信息的錄入、查詢、更新等。管理員對(duì)用戶的查詢、增加、刪除等。</p><p>  3.系統(tǒng)應(yīng)具備數(shù)據(jù)庫(kù)維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)行數(shù)據(jù)添加、刪除、修改等操作。</p><p>  2.2 學(xué)校工作流程分析</p><p>  學(xué)校工作總體規(guī)劃由教務(wù)人員在學(xué)生學(xué)籍信息管理系統(tǒng)中完成對(duì)運(yùn)行教務(wù)處所需的基本數(shù)據(jù)的維護(hù),

11、包括這些信息的增加、修改及對(duì)各項(xiàng)信息的變動(dòng)都將在這進(jìn)行操作。</p><p>  新的學(xué)年,教務(wù)人員首先加入年級(jí)信息,然后編排班級(jí),再對(duì)來(lái)校學(xué)生進(jìn)行基本的信息錄入,新生入學(xué)后由教務(wù)人員在學(xué)籍系統(tǒng)中完成新學(xué)生信息的維護(hù)。</p><p>  在每個(gè)學(xué)期開(kāi)始,教務(wù)處根據(jù)班級(jí)的情況,以班為單位,為每個(gè)班級(jí)安排一個(gè)輔導(dǎo)員及,并對(duì)各科老師進(jìn)行安排。</p><p>  每舉行

12、一次考試后由任課老師對(duì)本科的成績(jī)進(jìn)行錄入,上交教務(wù)處,匯總,并進(jìn)行排名,由教務(wù)處再進(jìn)行匯總,并對(duì)各班級(jí)各科成績(jī)及總成績(jī)進(jìn)行排名。</p><p>  教務(wù)處、輔導(dǎo)員及任課老師跟據(jù)實(shí)際情況對(duì)錄入的成績(jī)進(jìn)行維護(hù),各位同學(xué)對(duì)以上錄入的信息可以跟據(jù)自己的需要進(jìn)行適當(dāng)?shù)牟樵儭?lt;/p><p>  2.3 用戶具體需求分析</p><p>  普通用戶:對(duì)各科成績(jī)的查詢及查看

13、所有學(xué)生的成績(jī)以及所有學(xué)生的信息,修改用戶密碼。</p><p>  系統(tǒng)管理員:能夠?yàn)g覽所有用戶信息,能添加刪除用戶,修改密碼,新生入學(xué)還能夠添加修改新生的學(xué)籍信息,刪除畢業(yè)生的學(xué)籍信息,對(duì)所有院系的課程進(jìn)行安排,能夠進(jìn)行各班級(jí)管理,還能對(duì)學(xué)生成績(jī)進(jìn)行添加、修改、查詢等管理。</p><p>  2.4 系統(tǒng)設(shè)計(jì)分析</p><p>  本系統(tǒng)功能主要分為六大類

14、:</p><p>  用戶管理:用于對(duì)用戶的添加刪除,賦予不同權(quán)限及對(duì)用戶密碼的修改及查詢。</p><p>  課程管理:用于對(duì)各學(xué)期課程的開(kāi)設(shè)、修改、查詢和刪除。</p><p>  成績(jī)管理:用于對(duì)成績(jī)的添加、修改、查詢和刪除。</p><p>  班級(jí)管理:用于對(duì)班級(jí)的添加、修改、查詢和刪除。</p><p>

15、;  幫助信息:用于對(duì)本系統(tǒng)的具體操作進(jìn)行詳解。</p><p>  2.5 系統(tǒng)功能分析</p><p>  權(quán)限功能:為用戶設(shè)置權(quán)限功能,可分為普通用戶,系統(tǒng)管理員。普通用戶只是查詢不能修改,系統(tǒng)管理員能修改、刪除所有信息。</p><p>  錄入功能:系統(tǒng)沒(méi)有為普通用戶提供相應(yīng)的錄入功能,為系統(tǒng)管理員提供對(duì)所有信息的錄入功能。 </p>&l

16、t;p>  查詢功能:為所有用戶提供查詢的功能,可查詢?cè)试S范圍內(nèi)的所有信息。</p><p>  維護(hù)功能:為普通用戶提供查詢及相應(yīng)的修改功能,為系統(tǒng)管理員提供對(duì)所有信息的修改刪除功能。</p><p>  幫助功能:能幫助初次使用者對(duì)本系統(tǒng)的應(yīng)用及處理常見(jiàn)的問(wèn)題。</p><p>  退出功能:結(jié)束并關(guān)閉系統(tǒng)。</p><p>  2

17、.6 系統(tǒng)功能模塊圖</p><p>  圖2.1 系統(tǒng)功能模塊圖</p><p>  擬實(shí)現(xiàn)的簡(jiǎn)單操作界面</p><p>  1. 程序基本界面: 點(diǎn)擊每個(gè)菜單都有相應(yīng)的下拉列表,如圖所示“用戶管理”。</p><p>  圖2.2 程序基本界面圖</p><p>  2. 用戶登入界面,輸入用戶名與密碼:<

18、;/p><p>  圖2.3 用戶登陸界面圖</p><p>  3. 用戶瀏覽界面,從這可以看到所有存在的用戶及各自的權(quán)限:</p><p>  圖2.4 用戶瀏覽界面圖</p><p>  4. 修改密碼界面:</p><p>  圖2.5 修改密碼界面圖</p><p>  5. 添加用戶界面

19、,添加的用戶自動(dòng)保存至用戶數(shù)據(jù)庫(kù)中:</p><p>  圖2.6 添加用戶界面圖</p><p>  6. 刪除用戶界面,只有系統(tǒng)管理員用戶才可進(jìn)行此操作:</p><p>  圖2.7 刪除用戶界面圖</p><p>  7. 添加學(xué)籍信息界面,新生入學(xué)時(shí)添加其個(gè)人信息:</p><p>  圖2.8 添加學(xué)籍界面

20、圖</p><p>  8. 查詢學(xué)生個(gè)人信息界面,可按學(xué)號(hào)、班號(hào)、姓名三種方式進(jìn)行查詢:</p><p>  圖2.9 查詢學(xué)生信息界面圖</p><p>  9. 查改刪學(xué)籍信息界面:</p><p>  圖2.10 查刪改學(xué)籍界面圖</p><p>  10. 添加班級(jí)信息界面,包括班號(hào)、班級(jí)輔導(dǎo)員、年級(jí)、自習(xí)室

21、:</p><p>  圖2.11 添加班級(jí)信息界面圖</p><p>  11. 查詢班級(jí)信息界面:</p><p>  圖2.12 查詢班級(jí)信息界面圖</p><p>  12. 添加課程信息界面:</p><p>  圖2.13 添加課程信息界面圖</p><p>  13. 查刪改課程信

22、息界面:</p><p>  圖2.14 查刪改課程信息界面圖</p><p>  14. 設(shè)置年級(jí)課程界面:</p><p>  圖2.15 設(shè)置年級(jí)課程界面圖</p><p>  15. 添加成績(jī)信息界面:</p><p>  圖2.16 添加成績(jī)信息界面圖</p><p>  16. 改刪

23、成績(jī)信息界面:</p><p>  圖2.17 改刪成績(jī)界面圖</p><p>  17. 查詢成績(jī)界面:</p><p>  圖2.18 查詢成績(jī)界面圖</p><p><b>  UML建模</b></p><p><b>  用例圖</b></p><

24、;p>  用例圖是對(duì)系統(tǒng)需求的描述,表達(dá)了系統(tǒng)的功能和所提供的服務(wù),包括學(xué)生信息管理子系統(tǒng)、系統(tǒng)信息管理子系統(tǒng)、課程管理子系統(tǒng)、班級(jí)管理子系統(tǒng)、成績(jī)管理子系統(tǒng),如圖2.19所示。</p><p>  圖2.19 系統(tǒng)用例圖</p><p><b>  活動(dòng)圖</b></p><p>  活動(dòng)圖可以用來(lái)描述工作流和并發(fā)處理行為,表達(dá)從一個(gè)活

25、動(dòng)到另一個(gè)活動(dòng)的控制流,描述的是響應(yīng)內(nèi)部處理的對(duì)象類的行為。在本系統(tǒng)中,首先登陸學(xué)籍管理系統(tǒng),輸入其用戶名和密碼,若用戶名和密碼有誤則返回,否則進(jìn)入下一步,普通用戶和管理員用戶的功能各不同相同。如圖2.20所示。</p><p>  圖2.20 系統(tǒng)活動(dòng)圖</p><p><b>  數(shù)據(jù)流圖</b></p><p>  本系統(tǒng)從總體上分為系統(tǒng)

26、信息管理、學(xué)生信息管理、課程管理、班級(jí)管理和成績(jī)管理五大部分。每個(gè)模塊有自己的作用。下面的各模塊功能流圖就是由各功能之間的關(guān)系而得出的。</p><p>  1. 系統(tǒng)管理數(shù)據(jù)流圖</p><p>  圖2.21 系統(tǒng)管理數(shù)據(jù)流圖</p><p>  2. 學(xué)生信息數(shù)據(jù)流圖</p><p>  圖2.22 學(xué)生信息數(shù)據(jù)流圖</p>

27、<p>  3. 課程管理數(shù)據(jù)流圖</p><p>  圖2.23 課程管理數(shù)據(jù)流圖</p><p>  4. 班級(jí)管理數(shù)據(jù)流圖</p><p>  圖2.24 班級(jí)管理數(shù)據(jù)流圖</p><p>  5. 成績(jī)管理數(shù)據(jù)流圖</p><p>  圖2.25 成績(jī)管理數(shù)據(jù)流圖</p><p

28、>  從以上數(shù)據(jù)流圖中可以看出學(xué)生信息管理系統(tǒng)所需完成具體的功能:</p><p>  系統(tǒng)管理模塊: 用戶的添加、刪除、瀏覽及權(quán)限的賦予。</p><p>  學(xué)生信息管理模塊:輸入學(xué)生基本信息,并可以對(duì)學(xué)生信息進(jìn)行添加、查詢、修改、刪除。還可以關(guān)鍵字查詢并從數(shù)據(jù)庫(kù)里調(diào)出的學(xué)生基本信息.</p><p>  輸出學(xué)生基本信息,學(xué)號(hào)、班號(hào)、姓名查詢的信息

29、結(jié)果。</p><p>  班級(jí)信息管理模塊:輸入班號(hào)、教室號(hào)、班主任等信息,并可以對(duì)班級(jí)信息進(jìn)行添加、修改、查詢、刪除。包括班號(hào)、教室號(hào)、班主任、年級(jí)的錄入及修改。</p><p>  輸出班號(hào)、教室號(hào)、班主任年級(jí)等信息。</p><p>  成績(jī)信息管理模塊:輸入成績(jī)信息,并可以對(duì)成績(jī)信息進(jìn)行添加、查詢、修改、刪除。還可以用關(guān)鍵字查詢并調(diào)出數(shù)據(jù)庫(kù)里的學(xué)生基本成績(jī)

30、信息的修改、刪除等。</p><p>  輸出查詢的學(xué)生成績(jī)信息。</p><p>  課程信息管理模塊:輸入課程的基本信息,并可以對(duì)課程信息進(jìn)行添加、修改、刪除及課程設(shè)置。課程設(shè)置能夠?qū)Ω髂昙?jí)的課程進(jìn)行分類。劃分學(xué)期所學(xué)的課程。</p><p>  輸出課程的基本信息、年級(jí)及學(xué)期中所要學(xué)的課程等。</p><p><b>  數(shù)據(jù)

31、庫(kù)設(shè)計(jì)</b></p><p>  3.1 概念結(jié)構(gòu)設(shè)計(jì)</p><p>  概念結(jié)構(gòu)的實(shí)際是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵,這個(gè)階段主要的目標(biāo)是通過(guò)對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于DBMS的概念模型(E-R圖)。</p><p>  它的主要特點(diǎn)是:1.能真實(shí)、充分地反映現(xiàn)實(shí)世界,包括事物與事物之間的聯(lián)系,能滿足用戶對(duì)數(shù)據(jù)的處理要求,是對(duì)現(xiàn)實(shí)世界的

32、一個(gè)真實(shí)模型;2.易于理解,因此可以用它和不熟悉計(jì)算機(jī)的用戶交換意見(jiàn);3.易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),容易對(duì)概念模型修改和擴(kuò)充;4.易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。</p><p>  3.1.1 E-R圖</p><p><b>  1. 分E-R圖:</b></p><p>  a

33、 b</p><p>  c d</p><p><b>  e</b></p><p>  圖3.1 分E-R圖</p><p>  2. 系統(tǒng)的總體E-R圖:</p><p>  圖

34、3.1 總體E-R圖</p><p>  3.2 邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>  這個(gè)階段的任務(wù)就是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為與DBMS所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。在這個(gè)階段里,該系統(tǒng)的目標(biāo)就是把基本的E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型。通過(guò)轉(zhuǎn)換,得到的所需的數(shù)據(jù)表如下,其中,有下劃線的屬性為主鍵。</p><p>  學(xué)生(姓名,性別,學(xué)號(hào),班級(jí)

35、號(hào),出生日期,入學(xué)日期,家庭住址,備注)</p><p>  班級(jí)(班級(jí)號(hào),年級(jí),輔導(dǎo)員,自習(xí)室 )</p><p>  用戶(用戶名,密碼,權(quán)限)</p><p>  課程(課程名,課程編號(hào),課程類型,課程描述)</p><p>  成績(jī)(學(xué)生姓名,學(xué)號(hào),班級(jí)名稱,課程名,分?jǐn)?shù))</p><p><b> 

36、 3.3 流程圖</b></p><p><b>  1. 系統(tǒng)流程圖</b></p><p>  圖3.2 系統(tǒng)流程圖</p><p>  2. 分模塊流程圖</p><p>  (1)錄入模塊流程圖</p><p>  圖3.3 錄入模塊流程圖</p><p

37、> ?。?)系統(tǒng)管理模塊流程圖</p><p>  圖3.4 系統(tǒng)維護(hù)模塊流程圖</p><p>  (3) 查詢模塊流程圖</p><p>  圖3.5 查詢模塊流程圖</p><p><b>  3.4 數(shù)據(jù)字典</b></p><p>  3.5 物理結(jié)構(gòu)設(shè)計(jì)</p>

38、<p>  根據(jù)邏輯關(guān)系模型可直接設(shè)計(jì)基于某種數(shù)據(jù)庫(kù)管理系統(tǒng)支持的物理結(jié)構(gòu),我們知道關(guān)系數(shù)據(jù)庫(kù)是由表構(gòu)成的,所以依據(jù)系統(tǒng)用戶信息、學(xué)生基本信息、班級(jí)信息、課程信息和成績(jī)信息在數(shù)據(jù)庫(kù)中建立相應(yīng)的表。</p><p>  本系統(tǒng)采用的后臺(tái)數(shù)據(jù)庫(kù)是Microsoft SQL Server 2000數(shù)據(jù)庫(kù)系統(tǒng),根據(jù)學(xué)籍管理系統(tǒng)的數(shù)據(jù)字典,設(shè)計(jì)出學(xué)籍管理系統(tǒng)數(shù)據(jù)庫(kù)中各個(gè)數(shù)據(jù)表,本數(shù)據(jù)庫(kù)名稱為“student”,

39、其中包含五張表,它們分別是學(xué)生基本信息數(shù)據(jù)表,班級(jí)信息數(shù)據(jù)表,課程信息數(shù)據(jù)表,成績(jī)信息數(shù)據(jù)表,用戶登陸信息數(shù)據(jù)表。</p><p>  1. 學(xué)生基本信息數(shù)據(jù)表,包括學(xué)生的學(xué)號(hào)、姓名、性別、生日、家庭地址、聯(lián)系電話,入學(xué)日期,還有所在的系與班級(jí),便于管理和查詢學(xué)生的基本信息。</p><p>  表3.1 學(xué)生基本信息數(shù)據(jù)表</p><p>  2. 班級(jí)信息數(shù)據(jù)表

40、,包括班級(jí)號(hào)、年級(jí)、輔導(dǎo)員、自習(xí)教室,設(shè)置為字符型。</p><p>  表3.2 班級(jí)數(shù)據(jù)信息表</p><p>  3. 班級(jí)信息數(shù)據(jù)表,包括班級(jí)名稱及所在的年級(jí),均設(shè)為字符型。</p><p>  表3.3 班級(jí)信息數(shù)據(jù)表</p><p>  課程信息數(shù)據(jù)表,包括課程的編號(hào)、課程名稱、課程類型及一些課程描述。</p>&l

41、t;p>  表3.4 課程信息數(shù)據(jù)表</p><p>  成績(jī)信息數(shù)據(jù)表,包括考試科目編號(hào)、姓名、班級(jí)、學(xué)號(hào)、分?jǐn)?shù),便于成績(jī)查詢。</p><p>  表3.5 成績(jī)信息數(shù)據(jù)表</p><p>  用戶信息數(shù)據(jù)表,包括用戶名、密碼以及用戶的權(quán)限。</p><p>  表3.6 用戶信息數(shù)據(jù)表</p><p>&l

42、t;b>  系統(tǒng)實(shí)現(xiàn)</b></p><p><b>  4.1 系統(tǒng)測(cè)試</b></p><p>  測(cè)試是為了發(fā)現(xiàn)程序和系統(tǒng)中的錯(cuò)誤而執(zhí)行程序的過(guò)程。它的目標(biāo)是在精心控制的環(huán)境下,通過(guò)系統(tǒng)的方法來(lái)檢查程序,以便發(fā)現(xiàn)程序中的錯(cuò)誤。測(cè)試工作是保證系統(tǒng)質(zhì)量的關(guān)鍵,也是對(duì)系統(tǒng)最終的評(píng)審。</p><p>  4.2 系統(tǒng)運(yùn)行結(jié)果截

43、圖</p><p>  1. 程序基本界面:</p><p>  2. 用戶登陸界面:</p><p><b>  添加用戶界面:</b></p><p><b>  修改密碼:</b></p><p><b>  刪除用戶界面:</b></p&g

44、t;<p><b>  添加學(xué)籍信息界面:</b></p><p>  7. 查刪改學(xué)籍信息界面:</p><p>  8. 查詢學(xué)籍信息:</p><p><b>  添加班級(jí)信息界面:</b></p><p>  查刪改班級(jí)信息界面:</p><p><

45、;b>  添加課程信息界面:</b></p><p>  查刪改課程信息界面:</p><p><b>  添加成績(jī)信息界面:</b></p><p><b>  改刪成績(jī)信息界面:</b></p><p><b>  查詢成績(jī)信息界面:</b></p&

46、gt;<p><b>  a. 直接確定查詢</b></p><p><b>  b. 按學(xué)號(hào)查詢</b></p><p><b>  c. 按班號(hào)查詢</b></p><p><b>  d. 按課程查詢</b></p><p><b

47、>  4.3 程序代碼</b></p><p>  //package studentsystem;</p><p>  import java.awt.*;</p><p>  import java.awt.event.*;</p><p>  import javax.swing.*;</p><p

48、>  import java.sql.*;</p><p>  import javax.swing.UIManager;</p><p>  import java.awt.Toolkit;</p><p>  import java.awt.Canvas;</p><p>  import java.awt.Dimension;&l

49、t;/p><p>  import java.io.FileInputStream;</p><p>  import java.io.*;</p><p>  public class mainFrame</p><p>  extends JFrame {</p><p>  JPanel contentPane;&l

50、t;/p><p>  String user1;</p><p>  int power;</p><p>  Statement ps;</p><p>  ResultSet rs;</p><p>  Connection con;</p><p>  String url;</p>

51、;<p>  String username;</p><p>  JMenuBar jMenuBar1 = new JMenuBar();</p><p>  JMenu jMenuFile = new JMenu();</p><p>  JMenu jMenuHelp = new JMenu();</p><p>  JM

52、enuItem jMenuHelpAbout = new JMenuItem();</p><p>  JMenuItem adduser = new JMenuItem();</p><p>  JMenuItem deleteuser = new JMenuItem();//////////////////////////////////////////////////</p&g

53、t;<p>  JMenu xjgl = new JMenu();</p><p>  JMenuItem cxxj = new JMenuItem();</p><p>  JMenuItem xgxj = new JMenuItem();</p><p>  JMenuItem tjxj = new JMenuItem();</p>

54、<p>  JMenu bjgl = new JMenu();</p><p>  JMenuItem xgbj = new JMenuItem();</p><p>  JMenuItem tjbj = new JMenuItem();</p><p>  JMenu kcsz = new JMenu();</p><p>  J

55、MenuItem sznj = new JMenuItem();</p><p>  JMenuItem xgkc = new JMenuItem();</p><p>  JMenuItem tjkc = new JMenuItem();</p><p>  JMenu cjgl = new JMenu();</p><p>  JMenu

56、Item tjcj = new JMenuItem();</p><p>  ImageIcon icon = new ImageIcon("images" + File.separator+"a.jpg");</p><p>  JLabel jLabel1 = new JLabel(icon, JLabel.CENTER);</p>

57、<p>  JMenuItem xgcj = new JMenuItem();</p><p>  JMenuItem cxcj = new JMenuItem();</p><p>  JMenuItem exit = new JMenuItem(); </p><p>  JMenuItem jMenuItem1 = new JMenuItem

58、();</p><p>  JMenuItem llyh = new JMenuItem();</p><p>  JMenuItem login = new JMenuItem();//</p><p>  JMenu ghbj = new JMenu();</p><p>  JMenu jMenu1 = new JMenu();<

59、/p><p>  public mainFrame() {</p><p>  enableEvents(AWTEvent.WINDOW_EVENT_MASK);</p><p><b>  try {</b></p><p><b>  jbInit();</b></p><p&g

60、t;<b>  }</b></p><p>  catch (Exception e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p>  

61、//Component initialization</p><p>  private void jbInit() throws Exception {</p><p>  contentPane = (JPanel)this.getContentPane();</p><p>  contentPane.setLayout(null);</p>&

62、lt;p>  //this.setSize(new Dimension(800, 600));</p><p>  this.setResizable(false);</p><p>  this.setTitle("學(xué)生管理系統(tǒng)");</p><p>  jMenuFile.setFont(new java.awt.Font("

63、Dialog", 0, 15));</p><p>  jMenuFile.setForeground(Color.black);</p><p>  jMenuFile.setText("用戶管理 ");</p><p>  jMenuHelp.setFont(new java.awt.Font("Dialog",

64、 0, 15));</p><p>  jMenuHelp.setText(" 幫助信息 ");</p><p>  jMenuHelpAbout.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  jMenuHelpAbout.setText("關(guān)于 &

65、quot;);</p><p>  jMenuHelpAbout.addActionListener(new mainFrame_jMenuHelpAbout_ActionAdapter(this));</p><p>  adduser.setFont(new java.awt.Font("Dialog", 0, 15));</p><p> 

66、 adduser.setText("添加用戶");</p><p>  adduser.addActionListener(new mainFrame_adduser_actionAdapter(this));</p><p>  deleteuser.setFont(new java.awt.Font("Dialog", 0, 15));/////

67、///////////////////</p><p>  deleteuser.setText("刪除用戶");</p><p>  deleteuser.addActionListener(new mainFrame_deleteuser_actionAdapter(this));</p><p>  xjgl.setFont(new jav

68、a.awt.Font("Dialog", 0, 15));</p><p>  xjgl.setText(" 學(xué)籍管理 ");</p><p>  xjgl.addActionListener(new mainFrame_xjgl_actionAdapter(this));</p><p>  bjgl.setFont(n

69、ew java.awt.Font("Dialog", 0, 15));</p><p>  bjgl.setText(" 班級(jí)管理 ");</p><p>  kcsz.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  kcsz.setTe

70、xt(" 課程設(shè)置 ");</p><p>  cjgl.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  cjgl.setText("成績(jī)管理");</p><p>  tjcj.setFont(new java.awt.Font("

71、;Dialog", 0, 15));</p><p>  tjcj.setText("添加成績(jī)信息");</p><p>  tjcj.addActionListener(new mainFrame_tjcj_actionAdapter(this));</p><p>  tjxj.setFont(new java.awt.Font(&

72、quot;Dialog", 0, 15));</p><p>  tjxj.setForeground(Color.black);</p><p>  tjxj.setText("添加學(xué)籍信息");</p><p>  tjxj.addActionListener(new mainFrame_tjxj_actionAdapter(thi

73、s));</p><p>  xgxj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  xgxj.setText("查改刪學(xué)籍信息");</p><p>  xgxj.addActionListener(new mainFrame_xgxj_actionAdapte

74、r(this));</p><p>  cxxj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  cxxj.setText("查詢學(xué)籍信息");</p><p>  cxxj.addActionListener(new mainFrame_cxxj_actionAd

75、apter(this));</p><p>  tjbj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  tjbj.setText("添加班級(jí)信息");</p><p>  tjbj.addActionListener(new mainFrame_tjbj_acti

76、onAdapter(this));</p><p>  xgbj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  xgbj.setText("查改刪班級(jí)信息");</p><p>  xgbj.addActionListener(new mainFrame_xgbj

77、_actionAdapter(this));</p><p>  tjkc.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  tjkc.setText("添加課程信息");</p><p>  tjkc.addActionListener(new mainFrame_

78、tjkc_actionAdapter(this));</p><p>  xgkc.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  xgkc.setText("查改刪課程信息");</p><p>  xgkc.addActionListener(new mainF

79、rame_xgkc_actionAdapter(this));</p><p>  sznj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  sznj.setText("設(shè)置年級(jí)課程");</p><p>  sznj.addActionListener(new m

80、ainFrame_sznj_actionAdapter(this));</p><p>  jLabel1.setText("");</p><p>  jLabel1.setBounds(new Rectangle(1, 0, 800, 603));</p><p>  xgcj.setFont(new java.awt.Font("

81、Dialog", 0, 15));</p><p>  xgcj.setText("改刪成績(jī)信息");</p><p>  xgcj.addActionListener(new mainFrame_xgcj_actionAdapter(this));</p><p>  cxcj.setFont(new java.awt.Font(&q

82、uot;Dialog", 0, 15));</p><p>  cxcj.setText("查詢成績(jī)信息");</p><p>  cxcj.addActionListener(new mainFrame_cxcj_actionAdapter(this));</p><p>  exit.setFont(new java.awt.Fon

83、t("Dialog", 0, 15));</p><p>  exit.setText("退出系統(tǒng)");</p><p>  exit.addActionListener(new mainFrame_exit_actionAdapter(this));</p><p>  exit.addMouseListener(new m

84、ainFrame_exit_mouseAdapter(this));</p><p>  jMenuItem1.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  jMenuItem1.setText("修該密碼");</p><p>  jMenuItem1.addA

85、ctionListener(new </p><p>  mainFrame_jMenuItem1_actionAdapter(this));</p><p>  llyh.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  llyh.setText("瀏覽用戶");&

86、lt;/p><p>  llyh.addActionListener(new mainFrame_llyh_actionAdapter(this));</p><p>  login.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  login.setText("用戶登錄"

87、;);</p><p>  login.addActionListener(new mainFrame_login_actionAdapter(this));</p><p>  ghbj.setFont(new java.awt.Font("Dialog", 0, 15));</p><p>  jMenuFile.add(login);<

88、;/p><p>  jMenuFile.add(llyh);</p><p>  jMenuFile.add(jMenuItem1);</p><p>  jMenuFile.add(adduser);</p><p>  jMenuFile.add(deleteuser);</p><p>  jMenuFile.add

89、(exit);</p><p>  jMenuHelp.add(jMenuHelpAbout);</p><p>  jMenuBar1.add(jMenuFile);</p><p>  jMenuBar1.add(xjgl);</p><p>  jMenuBar1.add(bjgl);</p><p>  jMe

90、nuBar1.add(kcsz);</p><p>  jMenuBar1.add(cjgl);</p><p>  jMenuBar1.add(ghbj);</p><p>  jMenuBar1.add(jMenu1);</p><p>  jMenuBar1.add(jMenuHelp);</p><p>  x

91、jgl.add(tjxj);</p><p>  xjgl.add(xgxj);</p><p>  xjgl.add(cxxj);</p><p>  bjgl.add(tjbj);</p><p>  bjgl.add(xgbj);</p><p>  kcsz.add(tjkc);</p><

92、p>  kcsz.add(xgkc);</p><p>  kcsz.add(sznj);</p><p>  cjgl.add(tjcj);</p><p>  cjgl.add(xgcj);</p><p>  cjgl.add(cxcj);</p><p>  contentPane.add(jLabel1

93、, null);</p><p>  this.setJMenuBar(jMenuBar1);</p><p>  xjgl.setEnabled(false);</p><p>  bjgl.setEnabled(false);</p><p>  kcsz.setEnabled(false);</p><p>  

94、cjgl.setEnabled(false);</p><p>  jMenuFile.setEnabled(true);</p><p>  llyh.setEnabled(false);</p><p>  adduser.setEnabled(false);</p><p>  deleteuser.setEnabled(false);

95、</p><p>  this.setBounds(100, 100, 800, 600);</p><p>  this.setVisible(true);</p><p><b>  }</b></p><p>  public static void main(String args[]) {mainFrame m

96、ain = new mainFrame();</p><p><b>  }</b></p><p>  public void jMenuFileExit_actionPerformed(ActionEvent e) {</p><p>  System.exit(0);</p><p><b>  }<

97、;/b></p><p>  public void jMenuHelpAbout_actionPerformed(ActionEvent e) {</p><p>  new about();</p><p><b>  }</b></p><p>  //Overridden so we can exit wh

98、en window is closed</p><p>  protected void processWindowEvent(WindowEvent e) {</p><p>  super.processWindowEvent(e);</p><p>  if (e.getID() == WindowEvent.WINDOW_CLOSING) {</p&g

99、t;<p>  jMenuFileExit_actionPerformed(null);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void adduser_actionPerformed(ActionEvent e) {</p><

100、;p>  new adduser();</p><p><b>  }</b></p><p>  void deleteuser_actionPerformed(ActionEvent e) {</p><p>  new deleteuser();</p><p><b>  }</b>&

101、lt;/p><p>  void xgmm_actionPerformed(ActionEvent e) {</p><p>  new xiugaimima();</p><p><b>  }</b></p><p>  void tjbj_actionPerformed(ActionEvent e) {</p&g

102、t;<p>  new addxj();</p><p><b>  }</b></p><p>  void exit_actionPerformed(ActionEvent e) {</p><p>  System.exit(0);</p><p><b>  }</b><

103、/p><p>  void xgbj_actionPerformed(ActionEvent e) {</p><p>  new xgbj();</p><p><b>  }</b></p><p>  void xjgl_actionPerformed(ActionEvent e) {</p><p

104、><b>  }</b></p><p>  void login_actionPerformed(ActionEvent e) {</p><p>  username = JOptionPane.showInputDialog(this, "請(qǐng)輸入用戶名");</p><p>  String pwd = JOpt

105、ionPane.showInputDialog(this, "請(qǐng)輸入密碼");</p><p>  if (! (username == null && pwd == null)) {</p><p>  try {//連接數(shù)據(jù)庫(kù),驗(yàn)證用戶</p><p>  String name = "com.microsoft.j

106、dbc.sqlserver.SQLServerDriver";</p><p>  String url ="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=student"; </p><p>  Class.forName(name);</p><

107、p>  Connection con = DriverManager.getConnection(url, "sa", "19881017");</p><p>  ps = con.createStatement(ResultSet.</p><p>  TYPE_SCROLL_INSENSITIVE,</p><p>

108、;  ResultSet.CONCUR_READ_ONLY);</p><p><b>  try {</b></p><p>  rs = ps.executeQuery("select * from users where username='" + username + "' ");

109、 </p><p>  if (!rs.next()){ </p><p>  JOptionPane.showMessageDialog(null, "不存在此用戶!");</p><p><b>  }</b></p><p>  else if (! (rs.g

110、etString("pwd").trim().equals(pwd))) {</p><p>  JOptionPane.showMessageDialog(null, "密碼錯(cuò)誤!");</p><p><b>  }</b></p><p><b>  else {</b><

111、;/p><p>  if (rs.getString("power").trim().equals("系統(tǒng)管理員")) {</p><p>  xjgl.setEnabled(true);</p><p>  bjgl.setEnabled(true);</p><p>  kcsz.setEnabled(

112、true);</p><p>  cjgl.setEnabled(true);</p><p>  jMenuFile.setEnabled(true);</p><p>  llyh.setEnabled(true);</p><p>  adduser.setEnabled(true);</p><p>  del

113、eteuser.setEnabled(true);</p><p><b>  }</b></p><p><b>  else {</b></p><p>  cjgl.setEnabled(true);</p><p>  xjgl.setEnabled(true);</p>&l

114、t;p>  xgcj.setEnabled(false);</p><p>  tjcj.setEnabled(false);</p><p>  xgxj.setEnabled(false);</p><p>  tjxj.setEnabled(false);</p><p><b>  }</b></p&

115、gt;<p><b>  }</b></p><p><b>  }</b></p><p>  catch (SQLException sqle) {</p><p>  String error = sqle.getMessage();</p><p>  JOptionPane.

116、showMessageDialog(null, error);</p><p>  sqle.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p>  catch (Exception err) {</p>

117、<p>  String error = err.getMessage();</p><p>  JOptionPane.showMessageDialog(null, error);</p><p><b>  }</b></p><p><b>  }</b></p><p><

118、;b>  }</b></p><p>  void tjxj_actionPerformed(ActionEvent e) {</p><p>  new tjxjxx();</p><p><b>  }</b></p><p>  void xgxj_actionPerformed(ActionEv

119、ent e) {</p><p>  new xgxjxx();</p><p><b>  }</b></p><p>  void cxxj_actionPerformed(ActionEvent e) {</p><p>  new cxxj();</p><p><b>  }&

120、lt;/b></p><p>  void tjkc_actionPerformed(ActionEvent e) {</p><p>  new tjkcxx();</p><p><b>  }</b></p><p>  void llyh_actionPerformed(ActionEvent e) {&l

121、t;/p><p>  new scanuser();</p><p><b>  }</b></p><p>  void jMenuItem1_actionPerformed(ActionEvent e) {</p><p>  new xiugaimima();</p><p><b>

122、  }</b></p><p>  void xgkc_actionPerformed(ActionEvent e) {</p><p>  new xgkcxx();</p><p><b>  }</b></p><p>  void sznj_actionPerformed(ActionEvent e)

123、 {</p><p>  new sznjkc();</p><p><b>  }</b></p><p>  void tjcj_actionPerformed(ActionEvent e) {</p><p>  new addresult();</p><p><b>  }&l

124、t;/b></p><p>  void xgcj_actionPerformed(ActionEvent e) {</p><p>  new xgcj();</p><p><b>  }</b></p><p>  void cxcj_actionPerformed(ActionEvent e) {</

125、p><p>  new sacnresult();</p><p><b>  }</b></p><p>  void jMenu1_actionPerformed(ActionEvent e) {</p><p><b>  } </b></p><p><b>

126、  }</b></p><p>  class mainFrame_jMenuHelpAbout_ActionAdapter implements ActionListener { </p><p>  mainFrame adaptee;</p><p>  mainFrame_jMenuHelpAbout_ActionAdapter(main

127、Frame adaptee) {</p><p>  this.adaptee = adaptee;</p><p><b>  }</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  adaptee.jMenuHelpAbout_ac

128、tionPerformed(e);</p><p><b>  }</b></p><p><b>  }</b></p><p>  class mainFrame_adduser_actionAdapter implements java.awt.event.ActionListener { </p>

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論