2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p> 課程實踐任務(wù)書</p><p> 學(xué)院經(jīng)濟管理學(xué)院專業(yè)信息管理與信息系統(tǒng) </p><p> 姓名學(xué)號</p><p> 課程名稱面向?qū)ο蟪绦蛟O(shè)計設(shè)計題目學(xué)生信息管理系統(tǒng)程序設(shè)計</p><p> 設(shè)計要求與任務(wù):使用任意一款JAVA開發(fā)工具開發(fā)一個實用的應(yīng)用系統(tǒng),如記事本、計算器、繪圖軟件、JSP網(wǎng)站或者MIS??梢圆扇?/p>

2、B/S或者C/S模式。此次設(shè)計的具體要求還包括:(1)根據(jù)課程設(shè)計時間選擇適當(dāng)規(guī)模大小的設(shè)計題目,分小組進行設(shè)計。(2)小組組長為組員分配任務(wù),根據(jù)合理的安排,按照軟件開發(fā)的流程及方法,踏實地開展課程設(shè)計活動。(3)課程設(shè)計包括開發(fā)編碼和撰寫相關(guān)文檔。最后提交詳細的課程設(shè)計報告。(4)開發(fā)出可上機運行的JAVA應(yīng)用,并上機測試。工作計劃與進度安排:第1-3天:布置任務(wù)、分組、粗略調(diào)查、選題、可行性研究、系統(tǒng)規(guī)劃。第4-6天 :深入調(diào)研、

3、系統(tǒng)分析、建立數(shù)據(jù)邏輯模型、系統(tǒng)設(shè)計、建立數(shù)據(jù)物理模型第7-9天 :系統(tǒng)實施、程序設(shè)計、系統(tǒng)調(diào)試。 第9-10天 :應(yīng)用測試、整理資料、撰寫報告、準備驗收</p><p> 指導(dǎo)教師(簽字):年 月 日專業(yè)負責(zé)人(簽字):年 月 日學(xué)院院長(簽字):年 月 日</p><p><b>  摘要</b></p><p>  信息技術(shù)的

4、快速發(fā)展的同時也帶來了社會各個行業(yè)的發(fā)展。它的發(fā)展已經(jīng)深入到社會的各個角落。作為社會發(fā)展的前沿技術(shù),各行各業(yè)只要對其合理的進行運用,必將會帶來巨大的便捷。成功的運用信息技術(shù)將為各類學(xué)校學(xué)生信息管理帶來無限便利。作為計算機應(yīng)用的一部分,使用學(xué)生信息管理系統(tǒng)對學(xué)生檔案進行管理,有著手工管理所無法比擬的優(yōu)點,如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等,大地提高學(xué)生檔案管理的效率。</p><p&

5、gt;  本文介紹了系統(tǒng)開發(fā)的全過程。該系統(tǒng)以Windows為操作平臺,Java為開發(fā)語言,Access為數(shù)據(jù)庫,Eclipse為開發(fā)工具,使用JDBC技術(shù)進行連接,實現(xiàn)了在可視化的基礎(chǔ)上,利用數(shù)據(jù)庫進行后臺管理。</p><p>  系統(tǒng)由學(xué)生和老師基本信息添加、學(xué)生和老師基本信息查詢、學(xué)生和老師基本信息刪除、學(xué)生和老師基本信息修改及退出系統(tǒng)等功能模塊組成,基本功能較全面。用戶界面友好、清晰、操作簡便,易學(xué)易用

6、;系統(tǒng)可讀性好,易于維護、更新,安全性較好。采用傳統(tǒng)下拉菜單功能選擇,方便、快捷、一目了然,并且在一個窗體中進行操作,可視化強。采用鏈入數(shù)據(jù)庫進行存儲,可動態(tài)進行查看、操作,這樣的系統(tǒng)可修改性較強。</p><p>  關(guān)鍵字:面向?qū)ο?;Eclipse;JDBC</p><p><b>  目錄</b></p><p><b>  1

7、 前言1</b></p><p>  1.1 課題簡介1</p><p>  1.2 設(shè)計目的1</p><p><b>  2 需求分析2</b></p><p>  2.1業(yè)務(wù)需求分析2</p><p>  2.2功能需求分析2</p><p>

8、  2.2.1 學(xué)生信息2</p><p>  2.2.2 教師信息2</p><p>  2.2.3 成績管理3</p><p><b>  3 數(shù)據(jù)庫設(shè)計4</b></p><p>  3.1 Java連接數(shù)據(jù)庫4</p><p>  3.1.1 關(guān)系數(shù)據(jù)庫概述4</p>

9、;<p>  3.1.2 通過JDBC訪問數(shù)據(jù)庫4</p><p>  3.2 數(shù)據(jù)庫與基本表設(shè)計4</p><p>  4 系統(tǒng)設(shè)計與實施7</p><p>  4.1 Eclipse Java Neon 37</p><p>  4.2 結(jié)構(gòu)設(shè)計7</p><p>  4.3 文件組織結(jié)構(gòu)

10、8</p><p>  4.4 登錄模塊8</p><p>  4.4.1 設(shè)計構(gòu)想8</p><p>  4.4.2 實現(xiàn)登錄模塊8</p><p>  4.5 學(xué)生信息模塊11</p><p>  4.5.1 設(shè)計構(gòu)想11</p><p>  4.5.2 實現(xiàn)學(xué)生信息模塊主界面

11、11</p><p>  4.5.3添加信息12</p><p>  4.5.4 刪除信息14</p><p>  4.5.5修改信息16</p><p>  4.5.6 基本信息查詢18</p><p>  4.5.7 成績查詢20</p><p>  4.5.8 退出系統(tǒng)22&l

12、t;/p><p>  4.6 教師信息模塊22</p><p><b>  結(jié)束語26</b></p><p><b>  參考文獻27</b></p><p><b>  附錄A28</b></p><p><b>  1 前言</

13、b></p><p><b>  1.1課題簡介</b></p><p>  學(xué)生信息檔案的管理對于學(xué)校的管理者來說至關(guān)重要,學(xué)生信息是高等學(xué)校非常重要的一項數(shù)據(jù)資源,是一個教育單位不可缺少一部分。近幾年來,國家政策的調(diào)整,我國高等院校大規(guī)模擴招,給高等院校的教學(xué)管理、學(xué)生管理、后勤管理等方面都帶來不少的沖擊。其包含的數(shù)據(jù)量大,涉及的人員面廣,而且需要及時更新,

14、故較為復(fù)雜,難以單純地依靠人工管理,而且傳統(tǒng)的人工管理方式既不易于規(guī)范化,管理效率也不高。</p><p>  目前我國各類高等院校中還有相當(dāng)一部分學(xué)生檔案管理還停留在紙介質(zhì)的基礎(chǔ)上,中、小學(xué)對學(xué)生檔案的管理更是落后,這樣的管理機制嚴重浪費人力和物力,已經(jīng)不能適應(yīng)時代發(fā)展的要求。</p><p>  計算機應(yīng)用的普及已進入人類社會生活的各個領(lǐng)域,并發(fā)揮著越來越重要的作用。這種傳統(tǒng)的手工管理

15、模式必然被以計算機為物質(zhì)基礎(chǔ)的信息管理方法所取代。作為計算機應(yīng)用的一部分,使用學(xué)生信息管理系統(tǒng)對學(xué)生檔案進行管理,有著手工管理所無法比擬的優(yōu)點,如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學(xué)生檔案管理的效率,也是學(xué)校向科學(xué)化、正規(guī)化管理發(fā)展的必要條件。</p><p><b>  1.2 設(shè)計目的</b></p><p&g

16、t;  對學(xué)生信息管理系統(tǒng),目的是為了對學(xué)校的學(xué)生信息管理工作進行系統(tǒng)的管理,以提高工作效率。通過程序設(shè)計,開發(fā)出學(xué)生信息管理系統(tǒng)代替相應(yīng)的手工管理。學(xué)生信息管理系統(tǒng)可為用戶提供充足的信息和快捷的查詢手段,不但可以實現(xiàn)教師、學(xué)生的信息錄入、修改與刪除,而且可以實現(xiàn)學(xué)生成績的信息錄入、修改與刪除,同時可以對所有的信息進行查詢,實現(xiàn)學(xué)校的規(guī)范化管理。</p><p><b>  2 需求分析</b&g

17、t;</p><p><b>  2.1業(yè)務(wù)需求分析</b></p><p>  開發(fā)一個系統(tǒng)前,首先應(yīng)該對該系統(tǒng)要實現(xiàn)的功能進行整體的分析和規(guī)劃,確保在開發(fā)過程中不會出現(xiàn)重大缺陷和漏洞。因此,在軟件開發(fā)的過程中應(yīng)嚴格按照軟件工程的流程進行系統(tǒng)的分析與設(shè)計。</p><p>  該系統(tǒng)是學(xué)生管理系統(tǒng),應(yīng)以學(xué)生信息為中心,組織相關(guān)程序結(jié)構(gòu)。通過分

18、析可知,學(xué)生信息管理系統(tǒng)的主要業(yè)務(wù)應(yīng)有:學(xué)生基本信息管理、教師基本信息管理、學(xué)生成績管理、用戶管理等。</p><p><b>  2.2功能需求分析</b></p><p>  通過業(yè)務(wù)需求分析可知,該系統(tǒng)主要有三類用戶:學(xué)生,教師和系統(tǒng)管理員。因此,該系統(tǒng)的功能可分為學(xué)生信息管理、教師信息管理和成績管理,具體有以下幾個方面:</p><p>

19、;  學(xué)生:可以對每個學(xué)生的信息進行添加、修改、刪除和查詢。</p><p>  成績:可以對每個學(xué)生所學(xué)科目的成績進行添加、刪除、修改和查詢。</p><p>  教師:可以對每個教師的信息進行添加、刪除、修改和查詢。</p><p>  2.2.1 學(xué)生信息</p><p>  學(xué)生信息主要存儲了學(xué)生的基本情況,包括學(xué)號、姓名、性別、所在

20、班級、所在學(xué)院等信息。一個學(xué)號可唯一確定一名學(xué)生。學(xué)生信息集中進行管理,方便進行相關(guān)基本信息的查詢、修改、刪除等活動,大大簡化了手續(xù)。</p><p>  2.2.2 教師信息</p><p>  教師信息主要存儲了教師的基本情況,包括教師編號、姓名、性別、職稱、所在學(xué)院等信息。一個教師編號可唯一確定一名教師。教師信息集中進行管理,方便進行查詢、修改、刪除和人事變動等活動,大大簡化了手續(xù)。

21、</p><p>  2.2.3 成績管理</p><p>  成績管理的對象是學(xué)生所學(xué)科目的相應(yīng)成績,對成績進行集中管理,方便了學(xué)生查詢成績、教師添加、查詢和修改成績,加快了查詢速度,提高了準確率,大大簡化了手續(xù)。</p><p>  圖2-1 學(xué)生信息管理系統(tǒng)功能模塊圖</p><p><b>  3 數(shù)據(jù)庫設(shè)計</b&g

22、t;</p><p>  3.1 Java連接數(shù)據(jù)庫</p><p>  3.1.1 關(guān)系數(shù)據(jù)庫概述</p><p>  關(guān)系數(shù)據(jù)庫,是建立在關(guān)系數(shù)據(jù)庫模型基礎(chǔ)上的數(shù)據(jù)庫,借助于集合代數(shù)等概念和方法來處理數(shù)據(jù)庫中的數(shù)據(jù),用二維表格形式來表述實體與實體之間關(guān)系。有3種完整性約束:實體完整性、參照完整性和用戶自定義完整性,其中實體完整性和參照完整性是關(guān)系數(shù)據(jù)庫中必不可少

23、的完整性條件,分別表述為主屬性不為空和一表或多表之間具有某種對應(yīng)關(guān)系、相互制約。</p><p>  3.1.2 通過JDBC訪問數(shù)據(jù)庫</p><p>  JDBC由Java編程語言編寫的類和接口組成,是實現(xiàn)Java與各種數(shù)據(jù)庫連接的關(guān)鍵,提供了將Java與數(shù)據(jù)庫連接起來的程序接口,使用戶可以以SQL的形式編寫訪問請求,然后傳給數(shù)據(jù)庫,其結(jié)果再由這一接口返回,從而實現(xiàn)對數(shù)據(jù)庫中數(shù)據(jù)操作的

24、目的。</p><p>  3.2 數(shù)據(jù)庫與基本表設(shè)計</p><p>  由于該系統(tǒng)數(shù)據(jù)量不大,采用了Access作為數(shù)據(jù)庫,所建的系統(tǒng)數(shù)據(jù)庫名為“student1”。通過需求分析、概念設(shè)計與邏輯設(shè)計,可知該系統(tǒng)數(shù)據(jù)庫應(yīng)涉及到以下基本表:班級表、學(xué)生表、教師表,具體結(jié)構(gòu)如下:</p><p>  班級表(班級編號,班級名稱,所屬學(xué)院,班級人數(shù))</p>

25、<p>  該表用于保存班級信息,其數(shù)據(jù)字典如表3-1所示:</p><p>  表3-1 班級表數(shù)據(jù)字典</p><p>  學(xué)生表(學(xué)號,姓名,性別,出生日期,班級編號)</p><p>  該表用于存儲學(xué)生的基本信息,其數(shù)據(jù)字典如表3-2所示:</p><p>  表3-2 學(xué)生表數(shù)據(jù)字典</p><p

26、>  教師表(教師編號,姓名,性別,職稱,所屬學(xué)院,出生日期)</p><p>  該表用于存儲教師的基本信息,其數(shù)據(jù)字典如表3-3所示:</p><p>  表3-3 教師表數(shù)據(jù)字典</p><p>  課程表(課程號,課程名,學(xué)分)</p><p>  該表用于存儲學(xué)生可學(xué)課程的基本信息,其數(shù)據(jù)字典如表3-4所示:</p>

27、;<p>  表3-4 課程表數(shù)據(jù)字典</p><p>  成績表(學(xué)號,課程號,成績,教師編號)</p><p>  該表用于存儲學(xué)生可學(xué)課程的成績情況,其數(shù)據(jù)字典如表3-5所示:</p><p>  表3-5課程表數(shù)據(jù)字典</p><p><b>  4 系統(tǒng)設(shè)計與實施</b></p>&

28、lt;p>  4.1 Eclipse Java Neon 3</p><p>  出于穩(wěn)定性與便利性的考量,本設(shè)計選用了Eclipse Java Neon 3作為程序的開發(fā)環(huán)境,Eclipse是著名的跨平臺的自由集成開發(fā)環(huán)境(IDE),最初由OTI和IBM兩家公司的IDE產(chǎn)品開發(fā)組創(chuàng)建,它本身只是一個框架平臺,但是眾多插件的支持使得Eclipse擁有其他功能相對固定的IDE軟件很難具有的靈活性。使用時可清

29、楚的發(fā)現(xiàn)錯誤,并能根據(jù)相應(yīng)規(guī)則進行修改,大大簡化了程序檢查工作。由于package explorer的存在,使得隨時查找文件變得十分方便。同時又提供有很便利的數(shù)據(jù)庫連接方式。</p><p>  Eclipse Java Neon 3具有以下四大優(yōu)點:</p><p> ?。?)從編寫、查錯、編譯、幫助等等各方面為Java語言貼身定做。 </p><p> ?。?)

30、可無限擴展的強大插件功能。 </p><p> ?。?)眾多公司、廠商、組織支持。 </p><p>  (4)開放,自由,免費。 </p><p><b>  4.2 結(jié)構(gòu)設(shè)計</b></p><p>  該系統(tǒng)用于對學(xué)生的基本信息與學(xué)生的成績進行管理,主要包括添加、修改和刪除學(xué)生與教師基本信息,錄入、修改和刪除學(xué)生的

31、成績,查詢學(xué)生和教師的基本信息,為了方便,全部操作均在界面中完成。</p><p>  由此,將該系統(tǒng)結(jié)構(gòu)設(shè)計為登錄模塊、學(xué)生模塊、教師模塊,對應(yīng)于學(xué)生與教師這兩類主要用戶。由于涉及界面設(shè)計,因此調(diào)用了java.awt.*、java.awt.event.*、javax.swing.*、java.util.*、javax.swing.event.*、java.sql.*等包。</p><p>

32、;  4.3 文件組織結(jié)構(gòu)</p><p>  學(xué)生信息管理系統(tǒng)中使用的根目錄文件夾是“nnn”,其文件組織結(jié)構(gòu)圖如圖4-1所示:</p><p>  圖4-1 項目文件組織結(jié)構(gòu)圖</p><p><b>  4.4 登錄模塊</b></p><p>  登錄模塊使進入學(xué)生信息管理系統(tǒng)的第一個界面,相當(dāng)于一個網(wǎng)站的主頁。

33、</p><p>  4.4.1 設(shè)計構(gòu)想</p><p>  該系統(tǒng)是學(xué)生信息管理系統(tǒng),用戶為三類:學(xué)生、教師和系統(tǒng)管理員,可在相應(yīng)的權(quán)限范圍內(nèi)查詢和更新系統(tǒng)數(shù)據(jù)。因此,不同的用戶在登錄時需有不同的角色選項,此外,還應(yīng)有各自的用戶名和密碼。</p><p>  4.4.2 實現(xiàn)登錄模塊</p><p> ?。?)要生成一個界面,可應(yīng)用AWT

34、知識。設(shè)置其名字為學(xué)生信息管理系統(tǒng);設(shè)置布局管理器為(null)布局管理器,這樣方便往其中放組件;設(shè)置窗口大小和位置,還要設(shè)置窗口可見性。</p><p> ?。?)生成界面后,接下來就需要實現(xiàn)每個功能,在設(shè)計構(gòu)想中提到的第一個功能就是要對操作對象的身份進行選擇,這里要用下拉列表的形式進行選擇,也可以用單選按鈕來完成這個功能。在這項功能中,首先要選擇身份,所以要定義一個JLabel來說明,定義完JLabel后,就

35、需要定義一個JComoBox,也就是下拉列表框。</p><p> ?。?)輸入用戶名和密碼。需要用兩個JLabel來指明需要輸入用戶名和密碼。輸入用戶名需要定義一個JTextField,也就是單文本框。同時輸入文本,但輸入密碼和輸入用戶名是不一樣的,它需要定義成JPasswordField,它的輸出結(jié)果為“*****”這樣的形式。</p><p> ?。?)創(chuàng)建兩個按鈕,一個是登錄按鈕,

36、另一個是取消登錄按鈕,用來輸入的用戶名和密碼及選擇的身份進行提交。當(dāng)然要對登錄按鈕事件進行事件監(jiān)聽,首先要驗證用戶名和密碼是否正確并對上,然后根據(jù)選擇的身份來選擇需要進入那個界面,其代碼如下:</p><p>  public class Info_Manage extends Frame implements ActionListener{</p><p>  JLabel JLUser

37、Name =new JLabel("用戶名");</p><p>  JLabel JLPaw=new JLabel ("密碼");</p><p>  JLabel JLP=new JLabel("角色");</p><p>  JTextField JTUserName =new JTextField(

38、);</p><p>  JPasswordField JPsw=new JPasswordField();</p><p>  JTextField jt=new JTextField(10);</p><p>  String str[]={"學(xué)生","教師","管理者"};</p>&l

39、t;p>  JComboBox JCB=new JComboBox(str);</p><p>  JButton JB1=new JButton("登錄");</p><p>  JButton JB2=new JButton("取消");</p><p>  public Info_Manage(){</p&g

40、t;<p>  this.setTitle("學(xué)生信息管理系統(tǒng)");</p><p>  this.setLayout(null);</p><p>  JLUserName.setBounds(100,40,100,20);</p><p>  this.add(JLUserName);</p><p> 

41、 JTUserName.setBounds(200,40,100,20);</p><p>  this.add(JTUserName);</p><p>  JLPaw.setBounds(100,100,100,20);</p><p>  this.add(JLPaw);</p><p>  JPsw.setBounds(200,100

42、,80,20);</p><p>  this.add(JPsw);</p><p>  JCB.setBounds(200,150,100,20);</p><p>  this.add(JCB);</p><p>  JLP.setBounds(100,150,100,20);</p><p>  this.add

43、(JLP);</p><p>  JB1.setBounds(100,200,60,20);</p><p>  this.add(JB1);</p><p>  JB1.addActionListener(this);</p><p>  JB2.setBounds(200,200,60,20);</p><p> 

44、 this.add(JB2);</p><p>  JB2.addActionListener(this);</p><p>  this.setVisible(true);</p><p>  this.setBounds(10, 10, 400, 250);</p><p>  addWindowListener(new WindowAd

45、apter(){</p><p>  public void windowClosing(WindowEvent e){</p><p>  System.exit(0);</p><p><b>  }</b></p><p><b>  });</b></p><p> 

46、 JCB.addActionListener(new ActionListener(){</p><p>  public void actionPerformed(ActionEvent e){</p><p>  int h=JCB.getSelectedIndex();</p><p>  if(h==0) student_manage sm=new stud

47、ent_manage();</p><p>  else if(h==1) teacher_manage tm=new teacher_manage();</p><p><b>  }</b></p><p><b>  });</b></p><p><b>  }</b>

48、</p><p>  public void actionPerformed(ActionEvent e){</p><p>  if(e.getSource()==JB1){</p><p>  String name=JTUserName.getText();</p><p>  String password=new String(JP

49、sw.getPassword());</p><p>  if((name!=null&&(name.equals("1")))</p><p>  &&(password!=null&&(password.equals("1")))){</p><p>  new studen

50、t_manage();}</p><p><b>  else{</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>

51、  }</b></p><p>  其運行結(jié)果如圖4-2所示:</p><p>  圖4-2 Info_Manage.java的顯示結(jié)果</p><p>  4.5 學(xué)生信息模塊</p><p>  當(dāng)選擇“學(xué)生”時,單擊“登錄”按鈕就可以進入學(xué)生信息管理系統(tǒng)了,其信息量很大,具體如下所述:</p><p>

52、;  4.5.1 設(shè)計構(gòu)想</p><p>  進入了學(xué)生信息管理系統(tǒng),就可以對摸個學(xué)生的信息進行輸入、修改和刪除,也能對同學(xué)的信息進行查詢和對程序進行查詢。當(dāng)打算離開時,還要有一個選項用來退出學(xué)生信息管理系統(tǒng)。</p><p>  4.5.2 實現(xiàn)學(xué)生信息模塊主界面</p><p>  根據(jù)設(shè)計構(gòu)想,首先要搭建一個界面,然后吧學(xué)生信息操作的每一部分分為3大塊,分別

53、是信息、查詢、和其他,并把他們做成菜單形式,最后將對信息的輸入,修改和刪除做成子菜單添加到信息菜單下;將查詢信息和查詢成績添加到查詢菜單下;將突出添加到其他菜單下,并把他做成子菜單放在一個菜單下,這樣做是為了如果以后需要更多的功能,可以很方便的進行添加。</p><p>  創(chuàng)建菜單需要的定義JMenu,創(chuàng)建子菜單需要定義JMenuItem,并且要指明是添加到哪個菜單下面,下面是學(xué)生管理模塊主界面的部分代碼<

54、;/p><p>  class student_manage extends JFrame implements ActionListener{</p><p>  JMenuBar jm=new JMenuBar();</p><p>  JMenu jm1=new JMenu("信息");</p><p>  JMenuI

55、tem jmi1=new JMenuItem("增加信息");</p><p>  JMenuItem jmi2=new JMenuItem("刪除信息");</p><p>  JMenuItem jmi3=new JMenuItem("修改信息");</p><p>  JMenu jm2=new JM

56、enu("查詢");</p><p>  JMenuItem jmi21=new JMenuItem("基本信息查詢");</p><p>  JMenuItem jm22=new JMenuItem("成績查詢");</p><p>  JMenu jm3=new JMenu("其他"

57、);</p><p>  JMenuItem jmi31=new JMenuItem("退出");</p><p>  //添加組件與設(shè)置位置部分代碼與 Info_Manage.java類似</p><p>  public void actionPerformed(ActionEvent e){</p><p>  if

58、(e.getSource()==jmi1) new AddStudent();</p><p>  if(e.getSource()==jmi2) new DeleteStudent();</p><p>  if(e.getSource()==jmi3) new GetStudent();</p><p>  if(e.getSource()==jmi21) ne

59、w SetStudent();</p><p>  if(e.getSource()==jmi31) new UsingExit().setVisible(true);</p><p>  if(e.getSource()==jm22) new SetGrade();</p><p><b>  }</b></p><p&g

60、t;<b>  }</b></p><p>  其運行結(jié)果如圖4-3所示:</p><p>  圖4-3 student_manage.java的顯示結(jié)果</p><p><b>  4.5.3添加信息</b></p><p>  每個子菜單都對應(yīng)著一個操作界面,接下來對每一個子菜單進行講解。當(dāng)選擇

61、信息菜單下的“增加信息”子菜單時,將彈出如圖所示的界面,它調(diào)用了AddStudent.java類實現(xiàn)該功能。通過對“增加信息”這一子菜單設(shè)置監(jiān)聽,彈出界面。AddStudent.java的代碼如下:</p><p>  class AddStudent extends JFrame implements ActionListener{</p><p>  JLabel JL=new JLa

62、bel("添加基本信息",JLabel.CENTER);</p><p>  JLabel JLNumber=new JLabel("學(xué)號");</p><p>  JTextField JTNumber=new JTextField();</p><p>  JLabel JLName=new JLabel("姓名

63、");</p><p>  JTextField JTName=new JTextField();</p><p>  JLabel JLClass=new JLabel("班級");</p><p>  JTextField JTClass=new JTextField();</p><p>  JLabel

64、JLsex=new JLabel("性別");</p><p>  ButtonGroup BG=new ButtonGroup();</p><p>  JRadioButton JRB1=new JRadioButton("男");</p><p>  JRadioButton JRB2=new JRadioButton(

65、"女");</p><p>  JLabel JL1=new JLabel("學(xué)院");</p><p>  JTextField JT1=new JTextField();</p><p>  JLabel JL2=new JLabel("生日");</p><p>  JText

66、Field JT2=new JTextField();</p><p>  JButton JBAdd=new JButton("添加");</p><p>  JButton JBNext=new JButton("重置");</p><p>  JButton JBExit=new JButton("退出&quo

67、t;);</p><p>  String sql="";</p><p>  //添加組件與設(shè)置位置部分代碼與 Info_Manage.java類似</p><p>  public void actionPerformed(ActionEvent e){</p><p>  if(e.getSource()==JBAd

68、d){</p><p>  String snumber=JTNumber.getText();</p><p>  String sname=JTName.getText();</p><p>  String sclass=JTClass.getText();</p><p>  String ssex="女";<

69、;/p><p>  if(JRB1.isSelected())</p><p><b>  ssex="男";</b></p><p>  String scollect=JT1.getText();</p><p>  String sbir=JT2.getText();</p><

70、p>  sql="select * from student where id='"+snumber+"'";</p><p><b>  try{</b></p><p>  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p>

71、;<p>  Connection cot=DriverManager.getConnection(</p><p>  "jdbc:odbc:student1","","");</p><p>  Statement stm=cot.createStatement();</p><p>  

72、ResultSet rs=stm.executeQuery(sql);</p><p>  if(rs.next())</p><p>  JOptionPane.showMessageDialog(null, "該號碼已存在!");</p><p><b>  else{</b></p><p> 

73、 sql="insert into student values('"+snumber+"','"</p><p>  +sname+"','"+sclass+"','"+ssex+"','"</p><p>  +sc

74、ollect+"','"+sbir+"')";</p><p>  int i=stm.executeUpdate(sql);</p><p>  if(i>0) JOptionPane.showMessageDialog(null, "添加成功!");</p><p>  e

75、lse JOptionPane.showMessageDialog(null, "刪除失??!");</p><p><b>  }</b></p><p><b>  }</b></p><p>  catch(Exception ee){</p><p><b>  

76、}</b></p><p><b>  }</b></p><p>  if(e.getSource()==JBNext){</p><p>  JTNumber.setText(null);</p><p>  JTName.setText(null);</p><p>  JTCl

77、ass.setText(null);</p><p>  JT1.setText(null);</p><p>  JT2.setText(null);</p><p><b>  }</b></p><p>  if(e.getSource()==JBExit){</p><p>  setVi

78、sible(false);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  其運行結(jié)果如圖4-4所示:</p><p>  圖4-4 AddStudent.ja

79、va的顯示結(jié)果</p><p>  4.5.4 刪除信息</p><p>  當(dāng)選擇信息菜單下的刪除信息子菜單是,將彈出圖 所示的界面,它調(diào)用了DeleteStudent.java類實現(xiàn)該功能,其代碼如下:</p><p>  class DeleteStudent extends JFrame implements ActionListener{</p>

80、;<p>  JLabel JL=new JLabel("刪除基本信息",JLabel.CENTER);</p><p>  JLabel JLNumber=new JLabel("學(xué)號");</p><p>  JTextField JTNumber =new JTextField();</p><p>  J

81、Label JLName=new JLabel("姓名");</p><p>  JTextField JTName=new JTextField();</p><p>  JButton JBDel=new JButton("刪除");</p><p>  JButton JBNext=new JButton("重

82、置");</p><p>  JButton JBExit=new JButton("退出");</p><p>  String sql="";</p><p>  //添加組件與設(shè)置位置部分代碼與 Info_Manage.java類似</p><p>  public void acti

83、onPerfomed(ActionEvent e){</p><p>  if(e.getSource()==JBDel){</p><p>  String snumber=JTNumber.getText();</p><p>  String sname=JTName.getText();</p><p>  sql="sel

84、ect * from student where Id='"+snumber+"'";</p><p><b>  try{</b></p><p>  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p><p>  Connec

85、tion cot=DriverManager.getConnection(</p><p>  "jdbc:odbc:student1","","");</p><p>  Statement stm=cot.createStatement();</p><p>  ResultSet rs=stm.exe

86、cuteQuery(sql);</p><p>  if(rs.next()){</p><p>  sql="delete * from student where Id='"+snumber+"'";</p><p>  int n=stm.executeUpdate(sql);</p>&l

87、t;p>  if(n>0) JOptionPane.showMessageDialog(null,"刪除成功");</p><p>  else JOptionPane.showMessageDialog(null,"刪除失敗");</p><p><b>  }</b></p><p>  

88、else JOptionPane.showMessageDialog(null,"此用戶不存在");</p><p><b>  }</b></p><p>  catch(Exception er){</p><p><b>  }</b></p><p><b> 

89、 }</b></p><p>  if(e.getSource()==JBNext){</p><p>  JTNumber.setText(null);</p><p>  JTName.setText(null);</p><p><b>  }</b></p><p>  if(

90、e.getSource()==JBExit) setVisible(false);</p><p><b>  }</b></p><p><b>  }</b></p><p>  其運行結(jié)果如圖4-5所示:</p><p>  圖4-5 DeleteStudent.java的顯示結(jié)果</p

91、><p><b>  4.5.5修改信息</b></p><p>  當(dāng)選擇“信息”菜單下的“修改信息”子菜單時,將彈出如圖所示的界面,他將點用了GetStudent.java類實現(xiàn)該功能。GetStudent.java的代碼如下:</p><p>  class GetStudent extends JFrame implements Actio

92、nListener{</p><p>  JLabel JL=new JLabel("學(xué)生基本信息",JLabel.CENTER);</p><p>  JLabel JLNumber=new JLabel("學(xué)號");</p><p>  JTextField JTNumber=new JTextField();</p

93、><p>  JLabel JLName=new JLabel("姓名");</p><p>  JTextField JTName=new JTextField();</p><p>  JLabel JLClass=new JLabel("班級");</p><p>  JTextField JTCla

94、ss=new JTextField();</p><p>  JLabel JLsex=new JLabel("性別");</p><p>  ButtonGroup BG=new ButtonGroup();</p><p>  JRadioButton JRB1=new JRadioButton("男");</p&g

95、t;<p>  JRadioButton JRB2=new JRadioButton("女");</p><p>  JLabel JL1=new JLabel("學(xué)院");</p><p>  JTextField JT1=new JTextField();</p><p>  JLabel JL2=new J

96、Label("生日");</p><p>  JTextField JT2=new JTextField();</p><p>  JButton JBGet=new JButton("修改");</p><p>  JButton JBNext=new JButton("取消");</p>

97、<p>  JButton JBExit=new JButton("退出");</p><p>  String sql="";</p><p>  //添加組件與設(shè)置位置部分代碼與 Info_Manage.java類似</p><p>  public void actionPerformed(ActionEven

98、t e){</p><p>  if(e.getSource()==JBGet){</p><p>  String snumber=JTNumber.getText();</p><p>  String sname=JTName.getText();</p><p>  String sclass=JTClass.getText();&l

99、t;/p><p>  String ssex="女",sql;</p><p>  if(JRB1.isSelected())</p><p><b>  ssex="男";</b></p><p>  String scollect=JT1.getText();</p>

100、<p>  String sbir= JT2.getText();</p><p>  sql="select * from student where ld='"+snumber+"'";</p><p><b>  try{</b></p><p>  Class.for

101、Name("sun.jdbc.odbc.JdbcOdbcDriver");</p><p>  Connection cot=DriverManager.getConnection(</p><p>  "jdbc:odbc:student1","","");</p><p>  Sta

102、tement stm=cot.createStatement();</p><p>  ResultSet rs=stm.executeQuery(sql);</p><p>  if(rs.next()){</p><p>  sql="update student set name='"+sname+"',class

103、='"</p><p>  +sclass+"',sex='"+ssex+"',collect='"</p><p>  +scollect+"',bir='"+sbir+"' where ld='"</p><

104、;p>  +snumber+"'";</p><p>  int n=stm.executeUpdate(sql);</p><p>  if(n>0) JOptionPane.showMessageDialog(null,"修改成功");</p><p>  else JOptionPane.showMe

105、ssageDialog(null,"修改失敗!");</p><p><b>  }</b></p><p>  else JOptionPane.showMessageDialog(null,"此用戶不存在!");</p><p><b>  }</b></p>&l

106、t;p>  catch(Exception er){</p><p><b>  }</b></p><p><b>  }</b></p><p>  if (e.getSource()==JBNext){</p><p>  JTNumber.setText(null);</p>

107、;<p>  JTName.setText(null);</p><p>  JTClass.setText(null);</p><p>  JT1.setText(null);</p><p>  JT2.setText(null);</p><p><b>  }</b></p><

108、;p>  if(e.getSource()==JBExit){</p><p>  setVisible(false);</p><p><b>  }</b></p><p><b>  }</b></p><p>  public static void main (String args

109、[]){</p><p>  new GetStudent();</p><p><b>  }</b></p><p><b>  }</b></p><p>  其運行結(jié)果如圖4-6所示:</p><p>  圖4-6 GetStudent.java的顯示結(jié)果</p

110、><p>  4.5.6 基本信息查詢</p><p>  當(dāng)選擇“查詢”菜單下的“基本信息查詢”子菜單時,將彈出如圖所示的界面,它調(diào)用了SetStudent.java類實現(xiàn)該功能。SetStudent.java的代碼如下:</p><p>  class SetStudent extends JFrame implements ActionListener {<

111、/p><p>  JLabel JL=new JLabel("查詢基本信息",JLabel.CENTER);</p><p>  JLabel JLNumber=new JLabel("學(xué)號");</p><p>  JTextField JTNumber=new JTextField();</p><p>

112、;  JLabel JLName=new JLabel("姓名");</p><p>  JTextField JTName=new JTextField();</p><p>  JLabel JLClass=new JLabel("班級");</p><p>  JTextField JTClass=new JTextFi

113、eld();</p><p>  JLabel JLsex=new JLabel("性別");</p><p>  ButtonGroup BG=new ButtonGroup();</p><p>  JRadioButton JRB1=new JRadioButton("男");</p><p>

114、  JRadioButton JRB2=new JRadioButton("女");</p><p>  JLabel JL1=new JLabel("學(xué)院");</p><p>  JTextField JT1=new JTextField();</p><p>  JLabel JL2=new JLabel("生

115、日");</p><p>  JTextField JT2=new JTextField();</p><p>  JButton JBSet=new JButton("查詢");</p><p>  JButton JBNext=new JButton("重置");</p><p>  JB

116、utton JBExit=new JButton("退出");</p><p>  String sql="";</p><p>  //添加組件與設(shè)置位置部分代碼與 Info_Manage.java類似</p><p>  public void actionperfoemaed(ActionEvent e){</p&

117、gt;<p>  if(e.getSource()==JBSet){</p><p>  String snumber=JTNumber.getText();</p><p>  String sname=JTName.getText();</p><p>  String sclass=JTClass.getText();</p>&l

118、t;p>  String ssex="女";</p><p>  if(JRB1.isSelected()) ssex="男";</p><p>  String scollect=JT1.getText();</p><p>  String sbir=JT2.getText();</p><p&g

119、t;  sql="select * from student where Id='"+snumber+"'";</p><p><b>  try{</b></p><p>  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p>

120、<p>  Connection cot=DriverManager.getConnection("jdbc.odbc.student1","","");</p><p>  Statement stm=cot.createStatement();</p><p>  ResultSet rs=stm.executeQu

121、ery(sql);</p><p>  if(rs.next()){</p><p>  String name=rs.getString(2);</p><p>  JTName.setText(name);</p><p>  String clas=rs.getString(3);</p><p>  JTCla

122、ss.setText(clas);</p><p>  String sex=rs.getString(4);</p><p>  JRB1.setText(sex);</p><p>  String collect=rs.getString(5);</p><p>  JT1.setText(collect);</p>&l

123、t;p>  String bir=rs.getString(6);</p><p>  JT2.setText(bir);</p><p>  int n=stm.executeUpdate(sql);</p><p>  if(n>0) JOptionPane.showMessageDialog(null,"查詢成功");</

124、p><p>  else JOptionPane.showMessageDialog(null,"查詢失敗");</p><p><b>  }</b></p><p>  Else JOptionPane.showMessageDialog(null,"此用戶不存在");</p><p&

125、gt;  }catch(Exception ee){</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(e.getSource()==JBNext){</p><p>  JTNumber.setText(null);</p>&

126、lt;p>  JTName.setText(null);</p><p>  JTClass.setText(null);</p><p>  JT1.setText(null);</p><p>  JT2.setText(null);</p><p><b>  }</b></p><p&g

127、t;  if(e.getSource()==JBExit) setVisible(false);</p><p><b>  }</b></p><p><b>  }</b></p><p>  其運行結(jié)果如圖4-6所示:</p><p>  圖4-7 SetStudent.java的顯示結(jié)果&l

128、t;/p><p>  4.5.7 成績查詢</p><p>  當(dāng)選擇“查詢”菜單下的“成績查詢”子菜單時,調(diào)用SetGrade.java類來實現(xiàn)功能。SetGrade.java的代碼如下:</p><p>  class SetGrade extends JFrame implements ActionListener{</p><p>  J

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論