版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程設(shè)計任務(wù)書題目學(xué)籍管理系統(tǒng)組員學(xué)號組員學(xué)號組員學(xué)號專業(yè)課程JAVA指導(dǎo)教師完成時間:2011年9月一2011 年 12 月計算機科學(xué)系制課程設(shè)計任務(wù)書及成績評定課程設(shè)計的任務(wù)和具體要求1 錄入學(xué)生基本信息的功能界面。2 修改學(xué)生基本信息的功能界面。3 查詢學(xué)生基本信息的功能界面。4 刪除學(xué)生基本信息的功能界面。指導(dǎo)教師簽字: 日期: 指導(dǎo)教師評語成績: 指導(dǎo)教師簽字: 日期:課程設(shè)計所需軟件、硬件JAVA編程工具 MyEclipse6課程設(shè)計進度計劃起止日期工作內(nèi)容備注2011年10月至2011年12月編寫一個程序可以用來 管理學(xué)籍?dāng)?shù)據(jù)庫參考文獻、資料索引序號文獻、資料名稱編著者出版單位1
2、 vJava 程序設(shè)計 >高曉黎,劉博主編,清華大學(xué)岀版社2 Java編程思想3 Java核心技術(shù)4 深入簡岀java本學(xué)籍管理系統(tǒng)共有6個java源文件。類之間的主要關(guān)系如圖所示該java文件的類負責(zé)創(chuàng)建學(xué)籍管理系統(tǒng)主窗口。該類含有main方法,程序從該類開始執(zhí)行。該文件的類負責(zé)創(chuàng)建學(xué)籍管理系統(tǒng)的學(xué)生信息錄入界面。該文件的類負責(zé)創(chuàng)建學(xué)籍管理系統(tǒng)的學(xué)生信息修改界面。該文件的類負責(zé)創(chuàng)建學(xué)籍管理系統(tǒng)的學(xué)生信息查詢界面。該文件的類負責(zé)創(chuàng)建學(xué)籍管理系統(tǒng)的學(xué)生信息刪除界面。 負責(zé)創(chuàng)建存放學(xué)生信息的對象。1. 具體設(shè)計1. 1 主類 StudentManager1 .成員變量(見下表)主要成員變量(
3、屬性)成員變量描述變量類型名稱基本信息錄入界面Stude ntSituati on基本信息錄入基本信息修改界面ModifySituatio n基本信息修改基本信息查詢界面In quest基本信息查詢基本信息刪除界面Delete基本信息刪除菜單選項Jme nultem錄入,修改,查詢,刪除存放基本信息的散列表Hashtable基本信息存放散列表的文件Filefile2方法(見下表)主要方法名稱功能備注Stude ntMa nager創(chuàng)建程序主窗口構(gòu)造方法action Performed處理ActionEvent事件接口方法mai n程序開始運行3代碼import .*;import .*;imp
4、ort .*;public class StudentManager extends JFrame implements ActionListenerStudentSituation 基本信息錄入 =null; ddActionListener(this); 修改 .addActionListener(this);查詢 .addActionListener(this);刪除 .addActionListener(this);card=new CardLayout();con=getContentPane();pCenter=new JPanel();(card);file=new File(&
5、quot; 基本信息 .txt");if(!()tryFileOutputStream out=new FileOutputStream(file);ObjectOutputStream objectOut=new ObjectOutputStream(out);( 基本信息 );();();catch(IOException e)基本信息錄入 =new StudentSituation(file); 基本信息修改 =new ModifySituation(file); 基本信息查詢 =new Inquest(this,file);基本信息刪除 =new Delete(file);
6、(" 歡迎語界面 ",label); (" 錄入界面 ", 基本信息錄入 ); (" 修改界面 ", 基本信息修改 ); (" 刪除界面 ", 基本信息刪除 );(pCenter,;();addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e)(0););setVisible(true);setBounds(100,50,420,380);validate();public void actionPerformed(
7、ActionEvent e)if()= 錄入 )(pCenter," 錄入界面 ");else if()= 修改 )(pCenter,"修改界面");else if()=查詢)etVisible(true);else if()=刪除)(pCenter,"刪除界面");public static void main(String args)new Stude ntMa nager();1. 2 錄入界面 StudentSituation1 .成員變量(見下表)主要成員變量(屬性)描述變量類型名稱存放“學(xué)生”對象的散列表Hashtable
8、基本信息表輸入學(xué)生基本信息的文本條JtextField學(xué)號,姓名,專業(yè),年級,出生存放學(xué)生信息的對象Stude nt學(xué)生2方法(見下表)主要方法名稱功能備注Stude ntSituati on創(chuàng)建學(xué)生錄入界面構(gòu)造方法action Performed處理ActionEvent事件接口方法3代碼import .*;import .*;import .*;import .*;public class Stude ntSituati on exte nds JPa nel impleme nts Acti on Liste nerHashtable基本信息表=n ull;ddActio nListe
9、ner(this);重置.addActionListener(this);Box box1=();Box box2Box box3Box box4Box box5Box box6etText();if()>0)elseString discipli ng=String grade=String borth=Stri ng sex=n ull; if(on tai nsKey( number) WARNING_MESSAGE);etText(); 專業(yè).getText(); 年級.getText(); 岀生.getText();男.isSelected()sex=男.getText();e
10、lsesex=女.getText();學(xué)生=new Stude nt();學(xué)生.setNumber(number);學(xué)生.setName(name);學(xué)生.setDiscipling(discipling);學(xué)生.setGrade(grade);學(xué)生.setBorth(borth);學(xué)生.setSex(sex);tryout One=new FileOutputStream(file);outTwo=new ObjectOutputStream(out On e);基本信息表.put(number,學(xué)生);(基本信息表);();();學(xué)號.setText(null);姓名.setText(nu
11、ll);專業(yè).setText(null);年級.setText(null);岀生.setText(null);catch(Excepti on ee)else WARNING_MESSAGE);if()= 重置)學(xué)號.setText(null);姓名.setText(null);專業(yè).setText(null);年級.setText(null);岀生.setText(null);1. 3查詢界面In quest1 .成員變量(見下表)主要成員變量(屬性)描述變量類型名稱存放“學(xué)生”對象的散列表Hashtableyear顯示學(xué)生基本信息的文本條JTextField學(xué)號,姓名,專業(yè),年級,出生2
12、方法(見下表)主要方法名稱功能備注In quest創(chuàng)建查詢界面構(gòu)造方法action Performed處理ActionEvent事件接口方法3代碼import .*;import .*;import .*;import .*;public class In quest exte nds JDialog impleme nts Acti on Liste nerHashtable基本信息表=n ull;ddActio nListe ner(this);查詢.addActionListener(this);姓名=new JTextField(10);姓名.setEditable(false);專業(yè)
13、=new JTextField(10);專業(yè).setEditable(false);年級=new JTextField(10);年級.setEditable(false);岀生=new JTextField(10);岀生.setEditable(false);男=new JRadioButton("男"false);女=new JRadioButt on ("女"false);group=new Butt on Group();(男);(女);Box box1Box box2Box box3Box box4Box box5Box box6etText(
14、null);專業(yè).setText(null);年級.setText(null);岀生.setText(null);if()= 查詢 |()=學(xué)號)String n umber=""number= 學(xué)號.getText();if()>0)try inOne=new FileI nputStream(file);in Two=new ObjectI nputStream(i nOn e);基本信息表=(Hashtable)();o ntain sKey (n umber) et(n umber); 姓名.setText(); 專業(yè).setText(); 年級.setTex
15、t(); 岀生.setText();if().equals("男")男.setSelected(true);else女.setSelected(true);else WARNING_MESSAGE);1. 4 修改界面 ModifySituation1 .成員變量(見下表)主要成員變量(屬性)描述變量類型名稱存放“學(xué)生”對象的散列表Hashtable基本信息表輸入學(xué)生基本信息的文本條JTextField學(xué)號,姓名,專業(yè),年級,出生2方法(見下表)主要方法名稱功能備注ModifySituation創(chuàng)建學(xué)生信息修改界面構(gòu)造方法action Performed處理ActionEv
16、ent事件接口方法3代碼import .*;import .*;import .*;import .*;public class ModifySituati on exte nds JPa nel impleme nts Acti on Liste nerHashtable基本信息表=n ull;etE nabled(false);重置=new JButton(” 重置");學(xué)號.addActionListener(this);開始修改.addActionListener(this);錄入修改.addActionListener(this);重置.addActionListener(
17、this);Box box1=(); Box box2Box box3Box box4Box box5Box box6etText(); if()>0)try inOne=new FileI nputStream(file);in Two=new ObjectI nputStream(i nOn e);基本信息表=(Hashtable)();();();catch(Excepti on ee)if( 基本信息表 .containsKey(number) etEnabled(true); Student stu=(Student) 基本信息表 .get(number); 姓名 .setTe
18、xt();專業(yè) .setText();年級 .setText();出生 .setText();if().equals(" 男 ")男 .setSelected(true);else女 .setSelected(true);else etEnabled(false); String warning=" 該學(xué)號不存在 !"(this,warning,I!I!." 警告 ",;學(xué)號 .setText(null);姓名 .setText(null);專業(yè) .setText(null);年級 .setText(null);出生 .setText
19、(null);else etEnabled(false);String warning=" 必須要輸入學(xué)號 !"(this,warning,I!I!." 警告 ",;學(xué)號 .setText(null);姓名 .setText(null);專業(yè) .setText(null);年級 .setText(null);出生 .setText(null);else if()= 錄入修改 )String number=""number= 學(xué)號 .getText();if()>0)try inOne=new FileInputStream(fi
20、le);inTwo=new ObjectInputStream(inOne);etText();基本信息表 =(Hashtable)();ontainsKey(number)String discipling=String grade=String borth=專業(yè) .getText(); 年級 .getText(); 出生 .getText();String sex=null; if(sex=男.getText();elsesex=女.getText();Student學(xué)生 =new Student();學(xué)生 .setNumber(number);學(xué)生 .setName(name);學(xué)生 .
21、setDiscipling(discipling);學(xué)生 .setGrade(grade);學(xué)生 .setBorth(borth);學(xué)生 .setSex(sex);tryut(number, 學(xué)生 );( 基本信息表 );();();學(xué)號 .setText(null);姓名 .setText(null);專業(yè) .setText(null);年級 .setText(null); 出生 .setText(null);catch(Exception ee)錄入修改 .setEnabled(false);else if(ok=錄入修改 .setEnabled(true);elseetEnabled(f
22、alse);elseetEnabled(false);if()= 重置 )學(xué)號 .setText(null);姓名 .setText(null);專業(yè) .setText(null);年級 .setText(null);出生 .setText(null);1 5 刪除界面 Delete1 .成員變量(見下表)主要成員變量(屬性)描述變量類型名稱存放“學(xué)生”對象的散列表Hashtable基本信息表顯示學(xué)生基本信息的文本條JTextField學(xué)號,姓名,專業(yè),年級,出生2方法(見下表)主要方法名稱功能備注Delete創(chuàng)建學(xué)生信息刪除界面構(gòu)造方法action Performed處理ActionEven
23、t事件接口方法3代碼import .*;import .*;import .*;import .*;public class Delete exte nds JPa nel impleme nts Acti on Liste nerHashtable基本信息表=n ull;ddActio nListe ner(this);刪除.addActionListener(this);姓名=new JTextField(10);姓名.setEditable(false);專業(yè)=new JTextField(10);專業(yè).setEditable(false);年級=new JTextField(10);年
24、級.setEditable(false);岀生=new JTextField(10);岀生.setEditable(false);男=new JRadioButton("男"false);女=new JRadioButt on ("女"false);group=new Butt on Group();(男);(女);Box box1=(); Box box2Box box3Box box4Box box5Box box6etText();if()>0)try inOne=new FileI nputStream(file);in Two=new O
25、bjectI nputStream(i nOn e);基本信息表=(Hashtable)();o ntai nsKey( number) et( number);姓名.setText();專業(yè).setText();年級.setText();岀生.setText();if().equals("男") else男.setSelected(true);女.setSelected(true);Stri ng m="確定要刪除該學(xué)號及全部信息嗎?"emove( number);tryout One=new FileOutputStream(file);outTwo
26、=new ObjectOutputStream(out On e);(基本信息表);();();學(xué)號.setText(null);姓名.setText(null);專業(yè).setText(null);年級.setText(null);岀生.setText(null);catch(Excepti on ee)else if(ok=學(xué)號.setText(null);姓名.setText(null);專業(yè).setText(null);年級.setText(null);岀生.setText(null);else /如果不存在該生的基本信息,彈出警告對話框String warning="該學(xué)號不
27、存在!";(this,warni ng,I! Ap、I!.警告 ,;else /如果學(xué)號輸入框內(nèi)容為空,彈出警告對話框String warning="必須要輸入學(xué)號!";(this,warni ng,I! Ap、I!.警告 ,;1. 6學(xué)生對象 Student1 .成員變量(見下表)要成員變量(屬性描述變量類型名稱學(xué)號Stringn umber姓名Stri ngn ame專業(yè)Stri ngdiscipli ng年級Stri nggrade出生Stri ngborth性別Stri ngsex2 方法(見下表)主要方法名稱功能備注setNumber設(shè)置學(xué)號getNumber獲取學(xué)號setName設(shè)置姓名getNam
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度星海征途項目桉樹種植與農(nóng)業(yè)科技創(chuàng)新合同3篇
- 二零二五賓館股權(quán)轉(zhuǎn)讓與安全風(fēng)險評估合同3篇
- 二零二五版光伏發(fā)電工程承攬合同模板-施工與運營維護3篇
- 西交利物浦大學(xué)《材料表面處理實驗》2023-2024學(xué)年第一學(xué)期期末試卷
- 西安理工大學(xué)高科學(xué)院《遙感概論理論》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年高校畢業(yè)生就業(yè)服務(wù)區(qū)域合作與資源共享協(xié)議3篇
- 2024版軟件許可及服務(wù)合同
- 二零二五年度班組施工退場工程遺留問題處理、移交及結(jié)算合同3篇
- 二零二五年度高端商業(yè)空間裝修材料供應(yīng)與施工安裝合同3篇
- 天津外國語大學(xué)《圖書情報學(xué)研究方法》2023-2024學(xué)年第一學(xué)期期末試卷
- 15.5-博物館管理法律制度(政策與法律法規(guī)-第五版)
- 水泥廠鋼結(jié)構(gòu)安裝工程施工方案
- 2023光明小升初(語文)試卷
- 三年級上冊科學(xué)說課課件-1.5 水能溶解多少物質(zhì)|教科版
- GB/T 7588.2-2020電梯制造與安裝安全規(guī)范第2部分:電梯部件的設(shè)計原則、計算和檢驗
- GB/T 14600-2009電子工業(yè)用氣體氧化亞氮
- 小學(xué)道德與法治學(xué)科高級(一級)教師職稱考試試題(有答案)
- 河北省承德市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細
- 實用性閱讀與交流任務(wù)群設(shè)計思路與教學(xué)建議
- 應(yīng)急柜檢查表
- 通風(fēng)設(shè)施標(biāo)準(zhǔn)
評論
0/150
提交評論