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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  Java課程設計報告書</p><p>  題目: 學籍管理系統(tǒng) </p><p>  班級: 數(shù)媒 </p><p>  學號: </p><p>  姓名: </p>

2、<p>  教師: </p><p>  2012年 12 月 24 日</p><p><b>  《學籍管理系統(tǒng)》</b></p><p>  課程設計的目的與要求: </p><p> ?。ㄒ唬┱n程設計目的與任務</p><p>  

3、隨著社會的發(fā)展,及互聯(lián)網的不斷興起,面向互聯(lián)網的應用軟件己經成為人們社會生活的不可缺少的部分,人們通過使用這樣應用軟件提高自己工作效率,進行相互交流,使工作成果更加突出。作為當代大學生,要充分掌握網絡應用軟件的開發(fā)技術,能夠通過這些軟件開發(fā)技術設計出對社會生活有價值的應用軟件。Java語言是由SUN公司倡導開發(fā)的一種程序設計語言,該語言以其獨特的特點,高效率的開發(fā),得到廣泛的應用,基于該語言一些相關技術的應用,如JSP,Servlet技

4、術的應用,使其應用更加廣泛。本次課程設計就是利用Java語言及其相關技術,設計一些應用軟件,達到掌握使用Java語言進行程序設計的目的。</p><p><b>  (二)題目要求</b></p><p>  設計實現(xiàn)一個某學校學籍管理系統(tǒng),主要包括學籍的錄入,查詢,修改,學籍刪除等功能。查詢方式主要是支持學號查詢,例如:輸入“0305100410”,則顯示該學生的信

5、息?;谖募鞯牟迦肱c讀取。</p><p><b>  設計正文:</b></p><p><b>  1 系統(tǒng)分析</b></p><p>  學籍管理系統(tǒng)從理解上來看,是指某個學籍的管理,用戶通過一些相關的操作對學籍進行管理,學籍管理系統(tǒng)要求以管理為中心,可實現(xiàn)對學籍的錄入,查詢,修改,學籍刪除等功能,學籍管理是一個

6、比較靈活的系統(tǒng),通過這個簡單的系統(tǒng),就可以做到對學籍的各種操作有據(jù)可循,每個操作都被系統(tǒng)有效地記錄,也不會遺忘一些細節(jié),學籍管理的信息也透明化。這種信息的透明化,對學籍管理是十分重要的,這也是學籍管理系統(tǒng)的重要功能。</p><p>  2 主要功能邏輯過程</p><p>  用戶看到的第一頁面就能看到學籍管理功能,你可以選擇“學籍錄入操作”“學籍添加操作”“學籍查詢操作”“學籍刪除操作

7、”。學籍添加操作可以實現(xiàn)學籍信息的添加,而且所有的記錄不能為空。學籍錄入可以進行錄入學籍操作,查詢可以通過編號Id查詢學籍信息詳情,刪除可以直接刪除學籍記錄。</p><p>  本學生學籍管理系統(tǒng)最主要的的是在于對于輸入,修改,查找,刪除功能的編寫。</p><p>  關于輸入功能主要是學生學籍信息的存入,以及存儲文檔的建立。本系統(tǒng)建立了一個TXT文檔來存儲學生的學籍信息。需要實現(xiàn)的是

8、如何把信息存入文檔里。使用FileInputStream進行文件輸入,使用FileOutputStream進行文件輸出數(shù)據(jù)寫入,使用ObjectInputStream對學生對象信息輸入,使用ObjectOutputStream進行信息輸出,并與存儲學生信息的文檔關聯(lián)。</p><p>  修改功能需要實現(xiàn)的是用現(xiàn)有數(shù)據(jù)覆蓋文檔存儲的學生學籍信息。首先應該考慮是否原本文檔里含有輸入的學號的信息,如果有,則輸入其修改

9、信息替換掉原來的學籍信息給予保存文檔。查找功能其實就是修改功能的一部分,不過當讀取到對應的學生學籍信息之后,要進行對象輸出,顯示在界面里。刪除功能中是查找功能的延續(xù),讀取到學籍信息,給予制空,對應的文檔里的學生學籍信息全部為null。</p><p>  所有的功能中都需要考慮到異常情況。比如,當進行輸入功能時,填寫人員沒有填寫學號而直接經行數(shù)據(jù)輸入,應當給予警告。</p><p>  對

10、于界面布局方面,應當多次調試,已獲得更好的顯示效果。界面也應該做到簡潔明了,雖然使用者不明白此系統(tǒng)構造,但是仍然能夠很輕松的使用本系統(tǒng)。主界面中菜單欄的建立和錄入內容用來連接學籍管理系統(tǒng)的功能而進行操作。</p><p><b>  三、詳細設計:</b></p><p><b>  主界面</b></p><p>  

11、錄入=new JMenuItem("錄入學生基本信息");</p><p>  修改=new JMenuItem("修改學生基本信息");</p><p>  查詢=new JMenuItem("查詢學生基本信息");</p><p>  刪除=new JMenuItem("刪除學生基本信息&qu

12、ot;);</p><p>  bar=new JMenuBar();</p><p>  fileMenu=new JMenu("菜單選項");</p><p>  fileMenu.add(錄入);</p><p>  fileMenu.add(修改);</p><p>  fileMenu.a

13、dd(查詢);</p><p>  fileMenu.add(刪除);</p><p>  bar.add(fileMenu);</p><p>  setJMenuBar(bar); </p><p>  label=new JLabel("歡迎使用學生基本信息管理系統(tǒng)",JLabel.CENTER);</

14、p><p>  label.setFont(new Font("TimesRoman",Font.BOLD,24));</p><p>  label.setForeground(Color.red);</p><p>  基本信息=new Hashtable();</p><p>  錄入.addActionListener

15、(this);</p><p>  修改.addActionListener(this);</p><p>  查詢.addActionListener(this);</p><p>  刪除.addActionListener(this);</p><p>  主界面主要就是建立一個窗口,在窗口中插入一個JBar菜單條,并將其設置為建立窗口

16、的菜單條,用來儲存功能。添加完菜單條后在其添加菜單menuj。接下來在菜單中添加內容,本系統(tǒng)只添加了input,change,search,delete四項內容用來建立功能。建立一個TXT文檔用來存放string的學生各項數(shù)據(jù),使其能實現(xiàn)功能。</p><p><b>  輸入功能</b></p><p>  confirm = new JButton("錄

17、入");</p><p>  reset = new JButton("重置");</p><p>  ha1 = new Hashtable();</p><p>  confirm.addActionListener(this);</p><p>  reset.addActionListener(this)

18、;</p><p>  Box box1 = Box.createHorizontalBox();</p><p>  box1.add(new JLabel("學號:", JLabel.CENTER));</p><p>  box1.add(number);</p><p>  Box box2 = Box.creat

19、eHorizontalBox();</p><p>  box2.add(new JLabel("姓名:", JLabel.CENTER));</p><p>  box2.add(name);</p><p>  Box box3 = Box.createHorizontalBox();</p><p>  box3.a

20、dd(new JLabel("性別:", JLabel.CENTER));</p><p>  box3.add(male);</p><p>  box3.add(female);</p><p>  Box box4 = Box.createHorizontalBox();</p><p>  box4.add(new

21、 JLabel("專業(yè):", JLabel.CENTER));</p><p>  box4.add(department);</p><p>  Box box5 = Box.createHorizontalBox();</p><p>  box5.add(new JLabel("年級:", JLabel.CENTER))

22、;</p><p>  box5.add(grade);</p><p>  Box box6 = Box.createHorizontalBox();</p><p>  box6.add(new JLabel("出生:", JLabel.CENTER));</p><p>  box6.add(birth);</

23、p><p>  StudentSituation類</p><p>  學生.setNumber(number);</p><p>  學生.setName(name);</p><p>  學生.setDiscipling(discipling);</p><p>  學生.setGrade(grade);</p&

24、gt;<p>  學生.setBorth(borth);</p><p>  學生.setSex(sex);建立一個Student類用于存放學生的name,number,sex等數(shù)據(jù),方便的被其他功能調用,被其他功能讀取或者修改。</p><p><b>  修改功能</b></p><p>  if (ha1.containsK

25、ey(nu)) {</p><p>  confirm.setEnabled(true);</p><p>  Stu = (Student) ha1.get(nu);</p><p>  name.setText(Stu.getname());</p><p>  birth.setText(Stu.getbirth());</p&g

26、t;<p>  department.setText(Stu.getdepartment());</p><p>  grade.setText(Stu.getgrade());</p><p>  if (Stu.getsex().equals("男")) {</p><p>  male.setSelected(true);&l

27、t;/p><p><b>  } else {</b></p><p>  female.setSelected(true);</p><p><b>  }</b></p><p><b>  } else {</b></p><p>  String w

28、arning = "沒有該學生的信息";</p><p>  JOptionPane.showMessageDialog(this, warning, "出錯了", JOptionPane.WARNING_MESSAGE);</p><p>  number.setText(null);</p><p>  name.setT

29、ext(null);</p><p>  birth.setText(null);</p><p>  department.setText(null);</p><p>  grade.setText(null);</p><p><b>  }</b></p><p><b>  }

30、</b></p><p><b>  else {</b></p><p>  String warning = "必須輸入學號";</p><p>  JOptionPane.showMessageDialog(this, warning, "出錯了",</p><p&g

31、t;  視圖和輸入界面類似,建立盒子模型用于存放新的學生學籍信息覆蓋原來的學生學籍信息。對于沒有輸入學生學號而進行修改信息的情況,給予“必須輸入學號”的警告,如果輸入的學號查找成功,文件讀取數(shù)據(jù)輸出,是新的信息覆蓋。如果沒有此學生信息也必須給出警告。</p><p><b>  查找功能</b></p><p>  if(基本信息表.containsKey(numbe

32、r)) </p><p><b>  {</b></p><p>  Student stu=(Student)基本信息表.get(number);</p><p>  姓名.setText(stu.getName());</p><p>  專業(yè).setText(stu.getDisciping())

33、;</p><p>  年級.setText(stu.getGrade());</p><p>  出生.setText(stu.getBorth()); </p><p>  if(stu.getSex().equals("男"))</p><p><b>  {</b></p>&l

34、t;p>  男.setSelected(true);</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  女.setSelected(true);</p><

35、p><b>  }</b></p><p><b>  else</b></p><p><b>  { </b></p><p>  String warning="該學號不存在!";</p><p>  JOptionPane.showMessag

36、eDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p><b>  else</b></p><p>  {String warning="必須要輸入學號!";</p

37、><p>  JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p><b>  } </b></p><p>  關于查找功能

38、,主要就是文件數(shù)據(jù)輸入和輸出,讀取File中的學生學籍的信息,對于異常情況的警告,則和其它情況類似。</p><p><b>  刪除功能</b></p><p>  if(基本信息表.containsKey(number)) </p><p><b>  {</b></p><p&g

39、t;  Student stu=(Student)基本信息表.get(number);</p><p>  姓名.setText(stu.getName());</p><p>  專業(yè).setText(stu.getDisciping());</p><p>  年級.setText(stu.getGrade());</p><p>  出

40、生.setText(stu.getBorth()); </p><p>  if(stu.getSex().equals("男"))</p><p><b>  {</b></p><p>  男.setSelected(true);</p><p><b>  }</b><

41、;/p><p><b>  else</b></p><p><b>  {</b></p><p>  女.setSelected(true);</p><p><b>  }</b></p><p>  String m="確定要刪除該學號及全

42、部信息嗎?";</p><p>  int ok=JOptionPane.showConfirmDialog(this,m,"確認",JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);</p><p>  對于刪除功能使用

43、FileInputStream fin: 文件輸入流;FileOutputStream fou: 文件輸出流寫入數(shù)據(jù);ObjectInputStream oin: 對象輸入流;ObjectOutputStream oou: 對象輸出流。使得對應學號的File中的的學生學籍信息制空。如果查找不到對應學號或沒有輸入學號則輸出警告。</p><p>  四、設計體會與小結:</p><p>  

44、1、課程設計過程中出現(xiàn)的技術難點和解決方法:</p><p>  此次課程設計一開始好多東西都弄不明白,在網上查閱好多類型的資料,剛開始時決定做的是基于數(shù)據(jù)庫實現(xiàn)的學籍管理系統(tǒng),后來由于時間緊迫自己沒能理解數(shù)據(jù)庫部分的設計,后又選擇基于文件結構的學籍管理系統(tǒng)。</p><p>  本次課程設計的框架源于百度文庫中的材料,其中的具體算法綜合比較了好多具體的實例,最終實現(xiàn)了比較簡單而又實用的功

45、能。同時界面設計方面采用了老師給的選題中的樣式,簡約而美觀。實現(xiàn)了基本的學籍信息錄入,修改,查詢,刪除的功能。還有一本份有待改進,其實在程序的調試過程中,我一直想在給整個主界面的前面設計一個封面,增加不同的人有不同的登陸密碼進入系統(tǒng)后調試不同的功能。由于時間有限,尚未完成,還有待進一步完善。</p><p>  2 、課程設計期間的主要收獲:</p><p>  1)通過這次課設,可以讓自

46、己知道更多的java編程思想,可以了解更多的知識。</p><p>  2)理解更多的代碼,對以后的程序設計有很大好處。</p><p>  3)培養(yǎng)個人分析、解決問題的能力。</p><p>  4)培養(yǎng)實際分析問題、編程和動手能力,提高綜合素質。</p><p><b>  五、參考文獻 :</b></p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論