java課程設(shè)計(jì)學(xué)籍-管理系統(tǒng)_第1頁(yè)
java課程設(shè)計(jì)學(xué)籍-管理系統(tǒng)_第2頁(yè)
java課程設(shè)計(jì)學(xué)籍-管理系統(tǒng)_第3頁(yè)
java課程設(shè)計(jì)學(xué)籍-管理系統(tǒng)_第4頁(yè)
java課程設(shè)計(jì)學(xué)籍-管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)(論文)任務(wù)書 軟件 學(xué)院軟件+信息 專業(yè) 1班 班 一、課程設(shè)計(jì)(論文)題目 學(xué)籍管理系統(tǒng) 二、課程設(shè)計(jì)(論文)工作自 10 年 12 月 20 日起至 10 年 12 月 24 日止。三、課程設(shè)計(jì)(論文) 地點(diǎn): 軟件學(xué)院實(shí)訓(xùn)中心 四、課程設(shè)計(jì)(論文)內(nèi)容要求:1本課程設(shè)計(jì)的目的(1)使學(xué)生鞏固和提高Java編程技術(shù)(2)培養(yǎng)學(xué)生掌握程序設(shè)計(jì)的基本思路和方法; (3)加強(qiáng)學(xué)生研發(fā)、調(diào)試程序的能力;(4)培養(yǎng)學(xué)生分析、解決問題的能力;(5)提高學(xué)生的科技論文寫作能力。2課程設(shè)計(jì)的任務(wù)及要求1)任務(wù):(1)錄入學(xué)生基本信息的功能;(2)修改學(xué)生基本信息的功能(3)查詢學(xué)生基本信息的功能

2、(4)刪除學(xué)生基本信息的功能2)創(chuàng)新要求: (5)顯示所有學(xué)生基本信息的功能(6)在用戶進(jìn)行相應(yīng)操作時(shí)應(yīng)彈出提示對(duì)話框(7)采用數(shù)據(jù)庫(kù)存儲(chǔ)學(xué)生基本信息3)課程設(shè)計(jì)論文編寫要求(1)課程設(shè)計(jì)任務(wù)及要求(2)設(shè)計(jì)思路-工作原理、功能規(guī)劃(3)詳細(xì)設(shè)計(jì)數(shù)據(jù)分析、算法思路、類設(shè)計(jì)、功能實(shí)現(xiàn)(含程序流程圖、主要代碼及注釋)、界面等。(4)運(yùn)行調(diào)試與分析討論給出運(yùn)行屏幕截圖,分析運(yùn)行結(jié)果,有何改進(jìn)想法等。(5)設(shè)計(jì)體會(huì)與小結(jié)設(shè)計(jì)遇到的問題及解決辦法,通過設(shè)計(jì)學(xué)到了哪些新知識(shí),鞏固了哪些知識(shí),有哪些提高。(6)參考文獻(xiàn)(必須按標(biāo)準(zhǔn)格式列出,可參考教材后面的參考文獻(xiàn)格式)(7) 報(bào)告按規(guī)定排版打印,要求裝訂平

3、整,否則要求返工;(8) 課設(shè)報(bào)告的裝訂順序如下:封面任務(wù)書中文摘要目錄正文附錄(代碼及相關(guān)圖片)(9)嚴(yán)禁抄襲,如有發(fā)現(xiàn),按不及格處理。4)答辯與評(píng)分標(biāo)準(zhǔn): (1)考勤:10分; (2)程序檢查:30分; (3)課設(shè)答辯:20分(3)課程設(shè)計(jì)報(bào)告:40分;5)參考文獻(xiàn):(1)丁振凡Java語(yǔ)言使用教程 北京郵電大學(xué)出版社 (2)張 . 某出版社(3)6)課程設(shè)計(jì)進(jìn)度安排內(nèi)容 天數(shù)地點(diǎn)構(gòu)思及收集資料 7圖書館編碼與調(diào)試 5實(shí)驗(yàn)室撰寫論文 3圖書館、實(shí)驗(yàn)室學(xué)生簽名: 10年 12月 20 日課程設(shè)計(jì)(論文)評(píng)審意見(1)考勤(10分):優(yōu)()、良()、中()、一般()、差(); (2)程序檢查(

4、30分):優(yōu)()、良()、中()、一般()、差(); (3)課設(shè)答辯(20分):優(yōu)()、良()、中()、一般()、差(); (4)課設(shè)報(bào)告(40分):優(yōu)()、良()、中()、一般()、差();評(píng)閱人: 職稱: 講師 10 年 01 月 25 日中文摘要本程序用于用戶對(duì)少量學(xué)生信息進(jìn)行簡(jiǎn)單的管理,本程序針對(duì)于對(duì)安全系數(shù)要求不高,炒作不是很復(fù)雜的小型客戶開發(fā),如本程序不符合您的要求,請(qǐng)選擇其他大型程序。本程序可以實(shí)現(xiàn)對(duì)學(xué)生信息的錄入、查詢、修改、刪除等操作,同時(shí)支持查看所有學(xué)生信息,功能完善,界面簡(jiǎn)潔美觀,布局合理,操作簡(jiǎn)便,簡(jiǎn)單易用,任何人可輕松操作。同時(shí),本程序?qū)ο到y(tǒng)要求配置較低,運(yùn)行速度快,

5、而卻對(duì)數(shù)據(jù)庫(kù)管理要求較低。本程序數(shù)據(jù)庫(kù)采用office2007版本的access數(shù)據(jù)庫(kù)(.accdb)進(jìn)行數(shù)據(jù)存儲(chǔ),該數(shù)據(jù)庫(kù)可實(shí)現(xiàn)關(guān)系較為簡(jiǎn)單的數(shù)據(jù)管理。如有需要,請(qǐng)與XXX公司聯(lián)系。本程序版本為0.9公測(cè)版,使用完全免費(fèi),未經(jīng)允許,禁止用于商業(yè)用途,歡迎用戶使用,如在使用中出現(xiàn)問題,請(qǐng)及時(shí)將問題反饋給我們,一邊為您提供質(zhì)量更優(yōu)秀的軟件,我們?cè)俅紊畋砀兄x!目錄 TOC o 1-3 h z u HYPERLINK l _Toc281177995 一、課設(shè)任務(wù)及要求 PAGEREF _Toc281177995 h 1 HYPERLINK l _Toc281177996 二、需求分析 PAGEREF

6、 _Toc281177996 h 2 HYPERLINK l _Toc281177997 三、設(shè)計(jì)思路 PAGEREF _Toc281177997 h 3 HYPERLINK l _Toc281177998 四、詳細(xì)設(shè)計(jì) PAGEREF _Toc281177998 h 4 HYPERLINK l _Toc281177999 五、運(yùn)行調(diào)試與分析討論 PAGEREF _Toc281177999 h 19 HYPERLINK l _Toc281178000 六、設(shè)計(jì)體會(huì)與小結(jié) PAGEREF _Toc281178000 h 22 HYPERLINK l _Toc281178001 七、參考文獻(xiàn) PA

7、GEREF _Toc281178001 h 23一、課設(shè)任務(wù)及要求題目 學(xué)籍管理系統(tǒng)設(shè)計(jì)內(nèi)容設(shè)計(jì)基于access數(shù)據(jù)庫(kù)的學(xué)籍管理系統(tǒng)。學(xué)生基本信息應(yīng)包括對(duì)學(xué)生的相關(guān)屬性進(jìn)行操作,如學(xué)號(hào)、姓名、性別、專業(yè)、年級(jí)、生日等信息,另外添加備注一欄存儲(chǔ)學(xué)生的附加信息。用戶可對(duì)學(xué)生基本信息進(jìn)行錄入、查詢、修改、刪除、顯示所有學(xué)生信息等基本操作。學(xué)生基本信息包括多項(xiàng)屬性,關(guān)系較為復(fù)雜,應(yīng)采用數(shù)據(jù)庫(kù)存儲(chǔ)學(xué)生基本信息,這樣各種信息之間的關(guān)系、區(qū)別以及聯(lián)系可以更好的存儲(chǔ)起來。設(shè)計(jì)要求1錄入學(xué)生基本信息的功能用戶按照要求輸入信息進(jìn)行注冊(cè),成功之后要提示用戶注冊(cè)成功。當(dāng)用戶注冊(cè)是輸入不當(dāng),如學(xué)號(hào)已存在,應(yīng)提示用戶學(xué)號(hào)

8、已存在,并重新輸入。2查詢學(xué)生基本信息的功能21用戶可通過學(xué)號(hào)查詢數(shù)據(jù)庫(kù)中學(xué)生的基本信息,并將該學(xué)號(hào)的學(xué)生基本信息顯示在查詢窗口里。22當(dāng)用戶輸入有不當(dāng),如輸入學(xué)號(hào)不存在,應(yīng)提示用戶輸入的學(xué)號(hào)有誤,并重新輸入。23用戶不能對(duì)查詢窗口中顯示的學(xué)生基本信息進(jìn)行編輯。3修改學(xué)生基本信息的功能31用戶可通過學(xué)號(hào)在數(shù)據(jù)庫(kù)中搜索需要修改的學(xué)生的基本信息,并將該學(xué)號(hào)的學(xué)生基本信息顯示在修改窗口里。32用戶可通過各行的修改按鈕來改變學(xué)生信息的狀態(tài),并對(duì)學(xué)生基本信息進(jìn)行修改。33用戶輸入新的學(xué)生信息后可將修改后的學(xué)生信息上傳至數(shù)據(jù)庫(kù)中。4刪除學(xué)生基本信息的功能41用戶可通過學(xué)號(hào)在數(shù)據(jù)庫(kù)中搜索需要?jiǎng)h除的學(xué)生的基本

9、信息,并將該學(xué)號(hào)的學(xué)生基本信息顯示在刪除窗口里。42用戶可將需要?jiǎng)h除的學(xué)生信息從數(shù)據(jù)庫(kù)中刪除。43當(dāng)用戶刪除成功之后應(yīng)提示用處該學(xué)號(hào)的同學(xué)已從數(shù)據(jù)庫(kù)中刪除。5顯示所有學(xué)生基本信息的功能51可在窗口中顯示所有數(shù)據(jù)庫(kù)中的學(xué)生信息。52學(xué)生信息要按一定規(guī)則有序的顯示。二、需求分析系統(tǒng)目標(biāo):軟件開發(fā)的意圖便于用戶對(duì)學(xué)生的管理,方便查看學(xué)生的情況。如用戶對(duì)學(xué)生基本信息進(jìn)行錄入、查詢、修改、刪除等。使用范圍:本系統(tǒng)僅針對(duì)用戶對(duì)少量學(xué)生進(jìn)行學(xué)籍管理。功能要求:1錄入學(xué)生基本信息的功能2 查詢學(xué)生基本信息的功能3修改學(xué)生基本信息的功能4刪除學(xué)生基本信息的功能5顯示所有學(xué)生信息的功能信息采集與使用權(quán)限:使用時(shí)由

10、用戶錄入學(xué)生信息,安裝本系統(tǒng)的用戶皆可使用此軟件。性能需求:程序運(yùn)行流暢程序占用內(nèi)存小,可在大多數(shù)電腦上流暢運(yùn)行。數(shù)據(jù)的完整性,準(zhǔn)確性錄入按格式錄入,同時(shí)只能錄入一名學(xué)生的基本信息。輸出按格式輸出,輸出所有學(xué)生信息是要采用表格形式。界面適當(dāng)美觀,優(yōu)雅,通用性較強(qiáng)三、設(shè)計(jì)思路界面構(gòu)建:1、為了便于各種操作,軟件采用多窗口的模式。用戶可在不同窗口進(jìn)行相應(yīng)操作(錄入、查詢、修改、刪除、顯示所有學(xué)生省信息)。2、主窗口是用戶進(jìn)行各種操作的平臺(tái),具體操作在各個(gè)獨(dú)立功能窗口中完成。3、主窗口的主要功能位于菜單中,菜單為進(jìn)入各個(gè)功能窗口的唯一通道。4、各功能窗口(除顯示所有學(xué)生信息窗口)均由兩到三個(gè)模塊構(gòu)成

11、。第一個(gè)模塊中主要包含學(xué)號(hào)以及相關(guān)操作的組件。第二個(gè)模塊由姓名、性別、專業(yè)、年級(jí)、生日等相關(guān)組件構(gòu)成。第三個(gè)模塊(錄入、修改、刪除窗口中包含)由相關(guān)操作的功能按鈕組件構(gòu)成。5、當(dāng)用戶在進(jìn)行個(gè)別錄入、刪除或錯(cuò)誤輸入操作時(shí),會(huì)彈出相應(yīng)對(duì)話框提示用戶。如當(dāng)錄入成功或刪除成功,彈出成功以及相應(yīng)的簡(jiǎn)明信息提示當(dāng),當(dāng)錄入、刪除失敗以及輸入不當(dāng)是,彈出錯(cuò)誤以及簡(jiǎn)單的錯(cuò)誤原因提示用戶重新操作。6、界面布局盡量合理,各組件位置分布均勻美觀。數(shù)據(jù)存儲(chǔ)1、由于學(xué)生包含多項(xiàng)屬性,需對(duì)學(xué)生屬性進(jìn)行錄入、修改、刪除等多項(xiàng)操作,操作過程較為復(fù)雜,故采用數(shù)據(jù)庫(kù)。本軟件針對(duì)小型用戶使用,故使用入門級(jí)的access數(shù)據(jù)庫(kù)。2、由

12、于存儲(chǔ)少量信息,數(shù)據(jù)庫(kù)中只包含一個(gè)表,表中有學(xué)號(hào)、姓名、性別、專業(yè)、年級(jí)、生日等關(guān)鍵字。3、數(shù)據(jù)庫(kù)在用完之后即使關(guān)閉。四、詳細(xì)設(shè)計(jì)1、程序主體概述:import java.awt.*;import java.awt.event.*;import java.sql.*;程序采用AWT包的相關(guān)組件設(shè)計(jì),故包含awt包;通過各種動(dòng)作完成相關(guān)操作,故包含awt.event包;學(xué)生信息用數(shù)據(jù)庫(kù)存儲(chǔ),故包含sql包;public class StudentManageSystem extends Frame implements WindowListener,ActionListener。 。 。Stud

13、entManageSystem為主類,通過繼承類Frame以及借口,分別實(shí)現(xiàn)主窗口創(chuàng)建功能,動(dòng)作、窗口都做監(jiān)聽的功能。2、窗口監(jiān)聽:windowClosingwei()為實(shí)現(xiàn)各窗口關(guān)閉的方法。 public void windowClosing(WindowEvent e) try Frame frm=(Frame)(e.getSource(); if(e.getSource()=this) try stmt.close(); con.close(); catch(Exception ex) System.out.println(ex.getMessage(); System.exit(0);

14、 else frm.dispose(); catch(Exception ex) Dialog dig=(Dialog)(e.getSource(); dig.dispose(); 文件中出現(xiàn)的窗體有兩種Frame和Dialog。關(guān)閉方法采用異常處理機(jī)制,非異常情況需要關(guān)閉的窗口是Frame,如果需要關(guān)閉的窗體是Dialog,則進(jìn)入異常處理機(jī)制。當(dāng)關(guān)閉Frame時(shí)先判斷是否為主窗體,主窗體則關(guān)閉所有窗體并退出窗體,同時(shí)與數(shù)據(jù)庫(kù)斷開,當(dāng)需要關(guān)閉的窗體為功能窗體時(shí),只關(guān)閉該功能窗體。3、公共組件:Panel zt;/歡迎窗體中的重要容器MenuBar mt;/主菜單Frame zf;/功能窗體加載

15、的平臺(tái)Panel stuinf;/功能窗體中學(xué)生信息家在的容器Font font1;Label number,name,sex,profession,grade,birthday;/屬性標(biāo)簽TextField numbers,names,professions,grades,birthdays;/屬性文本域CheckboxGroup style=new CheckboxGroup();/性別Checkbox f,m;String url=jdbc:odbc:學(xué)生管理系統(tǒng);/數(shù)據(jù)庫(kù)連接String sql=SELECT *FROM 學(xué)生信息;Connection con;Statement st

16、mt;ResultSet rs;Dialog wrongd;/錯(cuò)誤對(duì)話框Dialog confirmd;/成功對(duì)話框String num0=;4、構(gòu)造函數(shù)主窗體: public StudentManageSystem1() super(學(xué)籍管理系統(tǒng)); this.setVisible(true); 。 mt=new MenuBar(); Menu menu=new Menu(菜單); MenuItem ininformation=new MenuItem(錄入學(xué)生信息); menu.add(ininformation); ininformation.addActionListener(this

17、); 。 mt.add(menu); setMenuBar(mt); zt=new Panel(); zt.add(new Label(n+歡迎登陸學(xué)生管理系統(tǒng)); this.add(zt);numbers=new TextField(20);。number=new Label(學(xué)好);。m=new Checkbox(男,true,style);f=new Checkbox(女,false,style);tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);Exception e)Systeln(e.getMessage(); try con=Drive

18、rManager.getConnection(url, , null); stmt=con.createStatement(); rs=stmt.executeQuery(sql); System.out.println(連接成功); catch(SQLException ex) System.out.println(Message+ex.getMessage(); 通過構(gòu)造函數(shù),加載主窗體(包括家在菜單以及歡迎界面),對(duì)主窗體設(shè)置大小,添加動(dòng)作監(jiān)聽器以及窗口監(jiān)聽器,初始化部分程序用到的公共組件(學(xué)生學(xué)號(hào)、姓名、性別、專業(yè)、年級(jí)、生日等相關(guān)組件),以及連接數(shù)據(jù)庫(kù)。5、學(xué)生信息加載方法: pub

19、lic Panel lodeinf(Panel stuinf)。 該方法用于加載功能窗體中學(xué)生信息顯示組件的加載,包括學(xué)號(hào)、姓名、性別、專業(yè)、年級(jí)、生日的標(biāo)簽以及文本域組件。6、錄入學(xué)生信息窗體 public void registzf(String s) stuinf=new Panel();zf=new Frame(s);zf.doLayout();zf.setLayout(new BorderLayout();Panel ps=new Panel();Label l=new Label(學(xué)號(hào));ps.setLayout(null);。l.setBounds(50, 5, 30, 20);

20、numbers.setBounds(100, 5, 220, 20);Panel px=new Panel();px.setLayout(null);px.setBounds(0, 0, 0, 40);Button sureb,cancelb;sureb=new Button(錄入);cancelb=new Button(取消); sureb.setBounds(150, 5, 40, 30);cancelb.setBounds(200, 5, 40, 30);px.setBackground(Color.LIGHT_GRAY);px.add(sureb);px.add(cancelb);su

21、reb.addActionListener(this);cancelb.addActionListener(this);zf.setVisible(true);。zf.addWindowListener(this); 錄入窗體包含三個(gè)模塊。通過容器ps加載學(xué)號(hào)的相關(guān)組件,成為第一模塊。注冊(cè)窗體調(diào)用lodeinf(Panel stuinf)加載學(xué)生信息主體組件進(jìn)行加載,成為第二模塊。通過容器px加載錄入,取消按鈕,來實(shí)現(xiàn)成績(jī)錄入以及推出該窗體,成為第三模塊。7、查詢學(xué)生信息窗體 public void inquirezf(String s) stuinf=new Panel();zf=new F

22、rame(s);。Panel ps=new Panel();Label l=new Label(請(qǐng)輸入要查詢的學(xué)號(hào):);Button b=new Button(查詢);b.addActionListener(this);ps.setLayout(null);ps.setBounds(0, 0, 100, 30);ps.setBackground(Color.LIGHT_GRAY);ps.add(l);。l.setBounds(50, 5, 120, 20);。zf.add(North,ps);zf.add(Center,lodeinf(stuinf);zf.addWindowListener(

23、this);names.setEnabled(false);。 查詢窗體包含兩個(gè)模塊。通過容器ps加載學(xué)號(hào)的相關(guān)組件,以及查詢按鈕,成為第一模塊。注冊(cè)窗體調(diào)用lodeinf(Panel stuinf)加載學(xué)生信息主體組件進(jìn)行加載,成為第二模塊。注意:該窗體中,用戶不能對(duì)除學(xué)號(hào)以外的信息進(jìn)行操作。8、修改學(xué)生信息窗體public void modifyzf(String s) stuinf=new Panel();zf=new Frame(s);。Panel p=new Panel();Panel ps=new Panel();Label l=new Label(請(qǐng)輸入要修改的學(xué)號(hào):);Butt

24、on b=new Button(搜索);ps.setLayout(null);ps.setBounds(0, 0, 400, 60);ps.setBackground(Color.LIGHT_GRAY);ps.add(l);。l.setBounds(25, 35, 120, 20);。b.addActionListener(this);Panel px=new Panel();px.setLayout(null);px.setBounds(0, 250, 400, 50);Button inquire,reinquire;inquire=new Button(錄入修改);reinquire=n

25、ew Button(重置); inquire.setBounds(130, 5, 60, 25);reinquire.setBounds(210, 5, 40, 25);px.add(inquire);px.add(reinquire);px.setBackground(Color.LIGHT_GRAY);inquire.addActionListener(this);reinquire.addActionListener(this);Label wl1,wl2,wl3,wl4,wl5;wl1=new Label(新);。wb1=new Button(修改);。wl1.setBackgroun

26、d(Color.LIGHT_GRAY);。zf.add(wl1);。zf.add(wb1);。wl1.setBounds(25, 76, 25, 20);。wb1.setBounds(330, 75, 40, 20);。wb1.addActionListener(this);。wb1.setEnabled(false);。p=lodeinf(stuinf);p.setBounds(0,60,400,190);zf.addWindowListener(this);zf.add(ps);。names.setEnabled(false);。 修改窗體包含三個(gè)模塊+部分輔助組件。通過容器ps加載學(xué)號(hào)的

27、相關(guān)組件,以及搜索按鈕,成為第一模塊。注冊(cè)窗體調(diào)用lodeinf(Panel stuinf)加載學(xué)生信息主體組件進(jìn)行加載,成為第二模塊。通過容器px加載錄入修改,重置按鈕,來實(shí)現(xiàn)成績(jī)錄入以及推出該窗體,成為第三模塊。還有部分顯示“新”的標(biāo)簽,以及修改的按鈕。注意:沒有顯示學(xué)號(hào)之前其他組件均不能操作。9、刪除學(xué)生信息窗體 public void deletezf(String s) stuinf=new Panel();zf=new Frame(s);。Panel ps=new Panel();Label l=new Label(請(qǐng)輸入要?jiǎng)h除的學(xué)號(hào):);Button b=new Button(搜

28、索);ps.setLayout(null);ps.setBounds(0, 0, 100, 30);ps.setBackground(Color.LIGHT_GRAY);ps.add(l);。l.setBounds(50, 5, 120, 20);。b.addActionListener(this);Panel px=new Panel();px.setLayout(null);px.setBounds(0, 0, 0, 40);Button sureb,cancelb;sureb=new Button(刪除);cancelb=new Button(取消); sureb.setBounds(1

29、50, 5, 40, 30);cancelb.setBounds(200, 5, 40, 30);px.setBackground(Color.LIGHT_GRAY);。sureb.addActionListener(this);cancelb.addActionListener(this);zf.add(North,ps);。zf.addWindowListener(this);names.setEnabled(false);。 刪除窗體包含三個(gè)模塊。通過容器ps加載學(xué)號(hào)的相關(guān)組件,以及搜索按鈕,成為第一模塊。注冊(cè)窗體調(diào)用lodeinf(Panel stuinf)加載學(xué)生信息主體組件進(jìn)行加載

30、,成為第二模塊。通過容器px加載刪除,取消按鈕,來實(shí)現(xiàn)成績(jī)錄入以及推出該窗體,成為第三模塊。注意:沒有顯示學(xué)號(hào)之前其他組件均不能操作。10、顯示所有學(xué)生信息窗體 public void allzf(String s)String informations=學(xué)號(hào) t姓名 t性別 t專業(yè) t年級(jí) t生日 rn;TextArea text;zf=new Frame(s);。Font font=new Font(宋體,12,14);trysql=SELECT *FROM 學(xué)生信息;rs=stmt.executeQuery(sql); while(rs.next() String s0=rs.getSt

31、ring(學(xué)號(hào)); 。 informations+=s0+t+s1+t+s2+t+s3+t+s4+t+s5+rn; catch(Exception ex)text=new TextArea(informations);text.setBounds(10,30,380,260);text.setFont(font);text.setBackground(Color.LIGHT_GRAY);zf.add(text);zf.addWindowListener(this); 該窗體由一個(gè)TextArea構(gòu)成,用于顯示全部學(xué)生的年基本信息。注意:顯示要按一定規(guī)則輸出(表格形式)。11、動(dòng)作監(jiān)聽 publ

32、ic void actionPerformed(ActionEvent e) if(e.getActionCommand()=錄入學(xué)生信息) if(zf!=null) zf.dispose(); registzf(學(xué)生信息錄入); if(e.getActionCommand()=查詢學(xué)生信息)。 if(e.getActionCommand()=修改學(xué)生信息)。 if(e.getActionCommand()=刪除學(xué)生信息)。 if(e.getActionCommand()=所有學(xué)生信息)。 if(e.getActionCommand()=錄入). if(e.getActionCommand()

33、=查詢). if(e.getActionCommand()=搜索). if(e.getActionCommand()=修改) numbers.setText(num0); if(e.getSource()=wb1) names.setEnabled(true); 。 if(e.getActionCommand()=錄入修改)。 if(e.getActionCommand()=重置) 。 try sql=SELECT *FROM 學(xué)生信息; rs=stmt.executeQuery(sql); while(rs.next() String s0=rs.getString(學(xué)號(hào)); 。 if(nu

34、m0.equals(s0) names.setText(s1); if(s2.equals(男) m.setState(true); 。 catch(Exception ex) System.out.println(ex.getMessage(); if(e.getActionCommand()=刪除) . if(e.getActionCommand()=取消) zf.dispose(); if(e.getActionCommand()=退出) System.exit(0); if(e.getActionCommand()=確定) try confirmd.dispose(); catch(E

35、xception ex) try wrongd.dispose(); catch(Exception ex) 11、1進(jìn)入錄入、查詢、修改、刪除、顯示所有信息窗口if(e.getActionCommand()=錄入學(xué)生信息)。if(e.getActionCommand()=查詢學(xué)生信息)。if(e.getActionCommand()=修改學(xué)生信息)。if(e.getActionCommand()=刪除學(xué)生信息)。if(e.getActionCommand()=所有學(xué)生信息)。11、2錄入 if(e.getActionCommand()=錄入) String num0=;String s0=n

36、umbers.getText();。if(m.getState()s2=男;if(f.getState()s2=女;int count=0; try sql=SELECT *FROM 學(xué)生信息; rs=stmt.executeQuery(sql); while(rs.next() num0=rs.getString(學(xué)號(hào)); if(num0.equals(s0) count+; if(count=0)sql=insert into 學(xué)生信息(學(xué)號(hào),姓名,性別,專業(yè),年級(jí),生日,備注) values(+s0+,+s1+,+s2+,+s3+,+s4+,+s5+,+);stmt.executeUpd

37、ate(sql); confirmd=new Dialog(zf,恭喜你!); confirmd.setVisible(true); confirmd.setModal(true); confirmd.setSize(300, 100); confirmd.setBounds(20, 100, 220, 100); confirmd.addWindowListener(this); Label confirml=new Label(注冊(cè)成功!n學(xué)號(hào):+s0+n姓名:+s1+n性別:+s2+n專業(yè):+s3+n年級(jí):+s4+n生日:+s5+); Button confirmb=new Button

38、(確定); confirmb.addActionListener(this); confirmd.setLayout(new FlowLayout(); confirmd.add(North,confirml); confirmd.add(Center,confirmb); confirmd.pack(); else wrongd=new Dialog(zf,錯(cuò)誤); 。 catch(Exception ex) System.out.println(ex.getMessage(); 錄入之前先檢查該學(xué)號(hào)是否存在,如果存在,彈出錯(cuò)誤對(duì)話框,提示重新輸入,如果錄入成功,彈出成功窗口。11、3查詢/

39、搜索 if(e.getActionCommand()=查詢) num0=numbers.getText(); int count=0; try sql=SELECT *FROM 學(xué)生信息; rs=stmt.executeQuery(sql); while(rs.next() String s0=rs.getString(學(xué)號(hào)); 。 if(num0.equals(s0) names.setText(s1); if(s2.equals(男) m.setState(true); 。 count+; if(count=0) wrongd=new Dialog(zf,錯(cuò)誤); 。 Label wron

40、gl=new Label(您輸入的學(xué)號(hào)+num0+不存在,請(qǐng)重新輸入!); 。 numbers.setText(); catch(Exception ex) System.out.println(ex.getMessage(); 查詢?cè)搶W(xué)號(hào)是否存在,如果不存在,彈出錯(cuò)誤對(duì)話框,提示重新輸入,如果存在,在查詢窗體中顯示該學(xué)生信息。11、4修改 if(e.getActionCommand()=錄入修改) numbers.setText(num0); String s0=num0;String s1=names.getText();。if(m.getState()s2=男;。System.out.p

41、rintln(s0+s1+s2+s3+s4+s5);trysql=update 學(xué)生信息 set 姓名 = +s1+ where 學(xué)號(hào) =+s0+;stmt.executeUpdate(sql);sql=update 學(xué)生信息 set 性別 = +s2+ where 學(xué)號(hào) =+s0+;。 confirmd=new Dialog(zf,恭喜你!); 。 names.setText(); 。catch(Exception ex) System.out.println(ex.getMessage(); 錄入修改后該學(xué)生的信息,如果錄入成功,彈出成功窗口。11、5刪除 if(e.getActionCommand()=刪除) numbers.setText(num0); 。 try sql=SELECT *FROM 學(xué)生信息; rs=stmt.executeQuery(sql); while(rs.next() String s0=rs.getString(學(xué)號(hào)); if(num0.equals(s0)sql=delete * from 學(xué)生信息 where 學(xué)號(hào) = +num0+;stmt.executeUpdate(sq

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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)論