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

下載本文檔

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

文檔簡介

1、<p>  Java程 序 設 計</p><p>  選題名稱 學生成績管理信息系統(tǒng) </p><p>  所在學院 計算機與信息學院 </p><p>  專業(yè)班級 </p><p>  組 長 </p><p>  組

2、員 </p><p>  指導教師 </p><p>  2016年 1 月 16日</p><p><b>  目錄</b></p><p>  一、課程設計的目的與意義3</p><p>  二、課題描述和分析3</p>

3、;<p>  2.1數(shù)據(jù)庫要求:4</p><p>  2.2功能需求:4</p><p>  三、系統(tǒng)環(huán)境與開發(fā)平臺4</p><p><b>  四、分析與設計5</b></p><p>  4.1、需求分析5</p><p>  4.2.1、功能模塊劃分5</

4、p><p>  4.2.2具體功能模塊6</p><p>  4.3數(shù)據(jù)庫結(jié)構(gòu)描述7</p><p>  4.3.1概念結(jié)構(gòu)設計7</p><p>  4.3.2數(shù)據(jù)庫關(guān)系模型——二維表7</p><p>  4.3.3數(shù)據(jù)庫物理存儲8</p><p>  4.3.4錄入數(shù)據(jù)后的表9&l

5、t;/p><p>  五、各部分功能實現(xiàn)10</p><p>  5.1查詢功能界面實現(xiàn)10</p><p>  5.2、排序功能界面實現(xiàn)13</p><p>  5.3、數(shù)據(jù)操作功能實現(xiàn)14</p><p>  5.4、優(yōu)秀率、不及格率功能實現(xiàn)15</p><p>  六、主要功能代碼

6、17</p><p>  6.1 多線程控制圖片的隨機轉(zhuǎn)換17</p><p>  6.2按學號查找學生信息時相應查詢按鈕的監(jiān)聽事件18</p><p>  6.3按班號查看學生信息時的響應按鈕的事件19</p><p>  6.4添加學生信息時通過傳遞學生信息使用SQL語句對數(shù)據(jù)進行操作20</p><p>

7、  6.5通過傳遞信息使用SQL語句查看優(yōu)秀率20</p><p><b>  七、總結(jié)21</b></p><p>  一、課程設計的目的與意義</p><p>  學生成績管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的決策者和管理者來說都至關(guān)重要。建立學生成績管理系統(tǒng),采用計算機對學生成績進行管理,進一步提高辦學效益和現(xiàn)代化水

8、平。幫助廣大教師提高工作效率,實現(xiàn)學生成績信息管理工作流程的系統(tǒng)化、規(guī)范化。</p><p>  此次Java課程設計有利于讓我們深入理解java語言的語法規(guī)則及其優(yōu)勢,掌握類與方法的構(gòu)造方法,掌握基于java的各種操作的實現(xiàn)方法,訓練對基礎(chǔ)知識和基本方法的綜合運用能力,增強對算法的理解能力,提高軟件設計能力。在實踐中培養(yǎng)獨立分析問題和解決問題的作風和能力。</p><p><b&g

9、t;  二、課題描述和分析</b></p><p>  學生成績管理信息系統(tǒng)</p><p><b>  2.1數(shù)據(jù)庫要求:</b></p><p>  1. 建立的數(shù)據(jù)庫中包含如下信息:學生學號、姓名、班級,語文、數(shù)學、英語成績。</p><p>  2. 至少要有5個班級,每個班級要有10名以上學生。&l

10、t;/p><p>  3. 使用.txt格式文本表示各種表。</p><p><b>  2.2功能需求:</b></p><p>  1. 能夠?qū)崿F(xiàn)根據(jù)以下關(guān)鍵字查詢:學生姓名 、學號、班級、課程名稱。</p><p>  2. 能夠?qū)崿F(xiàn)按照單科成績、總成績、平均成績、學號排序。</p><p> 

11、 3. 能夠?qū)崿F(xiàn)學生信息的插入、刪除和修改。</p><p>  4. 能夠查詢每個課程的最高分、最低分及相應學生姓名、班級和學號。</p><p>  5. 能夠查詢每個班級某門課程的優(yōu)秀率(90分及以上)、不及格率,并進行排序。</p><p><b>  界面要求:</b></p><p>  必須使用圖形界面實現(xiàn)

12、,要符合日常軟件使用規(guī)范來設計菜單和界面。</p><p><b>  其他要求:-</b></p><p>  1. 標識符命名遵循Windows命名規(guī)范。</p><p>  2. 能夠注意各種異常處理,注重提高程序運行效率。</p><p>  三、系統(tǒng)環(huán)境與開發(fā)平臺</p><p><

13、;b>  編程語言:java</b></p><p>  開發(fā)工具:Eclipse,Microsoft SQL Server 2008</p><p>  系統(tǒng)環(huán)境:裝有windows操作系統(tǒng)的計算機</p><p><b>  四、分析與設計</b></p><p><b>  4.1、需求

14、分析</b></p><p>  目前隨著學校規(guī)模不斷擴大,學生數(shù)量增加,有關(guān)學生的各種信息量也成倍的增長,需要學校統(tǒng)一管理的數(shù)據(jù)也越來越多,管理的難度大大增加。面對大量的數(shù)據(jù),學校管理者要做的工作實在很繁瑣,因此我們小組設計了一個簡單的學生信息管理系統(tǒng),對學生信息進行規(guī)范化管理、科學的統(tǒng)計和快速的查詢、修改、增加、刪除等操作,從而減少管理方面的工作量。學生信息管理包括對學生檔案和學籍的管理,可以實現(xiàn)

15、:查詢學生姓名 、學號、班級、課程名稱;按照單科成績、總成績、平均成績、學號排序;能夠?qū)崿F(xiàn)學生信息的插入、刪除和修改;能夠查詢每個課程的最高分、最低分及相應學生姓名、班級和學號; 能夠查詢每個班級某門課程的優(yōu)秀率、不及格率,并進行排序等等。</p><p>  4.2.1、功能模塊劃分</p><p>  本系統(tǒng)主要包括三個模塊分為學生信息管理模塊、學生信息排序模塊、學生信息查詢模塊。&l

16、t;/p><p>  4.2.2具體功能模塊</p><p><b>  查詢模塊:</b></p><p>  4.3數(shù)據(jù)庫結(jié)構(gòu)描述</p><p>  4.3.1概念結(jié)構(gòu)設計</p><p>  學生成績管理系統(tǒng)的設計,主要解決的是對系統(tǒng)中的學生的基本信息,學生成績的基本信息,以及班級成績管理工作

17、。首先,需要定義各個所需要的數(shù)據(jù)對象,然后在這些對象上進行操作;其次,實現(xiàn)功能模塊時,采用先模塊化,后集成化,即對系統(tǒng)各個功能模塊分別獨立設計和調(diào)試,在創(chuàng)建系統(tǒng)主登錄界面時再將各個功能模塊通過主菜單對各個模塊的調(diào)用集成到一起,最后進行系統(tǒng)整體設計調(diào)試。在數(shù)據(jù)存儲和操作方面,采用文件的讀寫導出數(shù)據(jù)庫,并在讀出數(shù)據(jù)之后放入鏈表進行操作;并在數(shù)據(jù)更新之后將數(shù)據(jù)存到數(shù)據(jù)庫中。</p><p><b>  數(shù)據(jù)庫

18、E-R模型</b></p><p>  4.3.2數(shù)據(jù)庫關(guān)系模型——二維表</p><p>  學生表(Student)</p><p>  成績表(Cgrade)</p><p>  4.3.3數(shù)據(jù)庫物理存儲</p><p>  Create database manageCgrade</p>

19、<p>  On(Name = Cgrade,FileName = 'd:\Create\Cgrade.mdf',size = 3Mb)</p><p>  Log on(name = Cgrade_log, FileName = 'd:\Create\Cgrade_log.ldf', size = 1Mb)</p><p>  Create

20、table Student</p><p><b>  (</b></p><p>  Sno Char(20) primary key,</p><p>  Sname Char(20),</p><p>  Cno Char(20)</p><p><b>  );</b&g

21、t;</p><p>  Create table Cgrade</p><p><b>  (</b></p><p>  Sno Char(20) primary key,</p><p>  CSCore float heCk(CSCore >= 0 and CSCore <= 100),</p&

22、gt;<p>  ESCore float CheCk(ESCore >= 0 and ESCore <= 100),</p><p>  MSCore float CheCk(MSCore >= 0 and MSCore <= 100),</p><p>  foreign key(Sno)referenCes Student(Sno)</p&

23、gt;<p><b>  );</b></p><p>  4.3.4錄入數(shù)據(jù)后的表</p><p>  學生表(Student)</p><p>  成績表(Cgrade)</p><p><b>  五、各部分功能實現(xiàn)</b></p><p>  5.1查詢

24、功能界面實現(xiàn)</p><p>  根據(jù)學號查詢某個學生基本信息:</p><p>  根據(jù)班號查詢班級學生信息:</p><p>  根據(jù)學號查詢某個學生成績:</p><p>  5.2、排序功能界面實現(xiàn)</p><p><b>  按總成績排序</b></p><p>

25、  5.3、數(shù)據(jù)操作功能實現(xiàn)</p><p><b>  添加某個學生信息</b></p><p>  5.4、優(yōu)秀率、不及格率功能實現(xiàn)</p><p>  按數(shù)學成績(分數(shù))90)優(yōu)秀率排序</p><p>  按語文成績(分數(shù)<60)不及格率排序</p><p><b>  六

26、、主要功能代碼</b></p><p>  6.1 多線程控制圖片的隨機轉(zhuǎn)換</p><p>  new Thread(){</p><p>  public void run(){</p><p>  while(true){</p><p><b>  try {</b></

27、p><p>  Thread.sleep(5000);</p><p>  } catch (InterruptedException e1) {</p><p>  // TODO Auto-generated catch block</p><p>  e1.printStackTrace();</p><p><

28、;b>  }</b></p><p>  main_img.setIcon(new javax.swing.ImageIcon(</p><p>  getClass().getResource("/image/main_5.jpg"))); // NOI18N</p><p><b>  try {</b>

29、;</p><p>  Thread.sleep(5000);</p><p>  } catch (InterruptedException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p>

30、;<b>  }</b></p><p>  main_img.setIcon(new javax.swing.ImageIcon(</p><p>  getClass().getResource("/image/main_6.jpg"))); // NOI18N</p><p><b>  try {</

31、b></p><p>  Thread.sleep(5000);</p><p>  } catch (InterruptedException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><

32、p><b>  }</b></p><p>  main_img.setIcon(new javax.swing.ImageIcon(</p><p>  getClass().getResource("/image/main_7.jpg"))); // NOI18N</p><p><b>  try {&

33、lt;/b></p><p>  Thread.sleep(5000);</p><p>  } catch (InterruptedException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p>

34、<p><b>  }</b></p><p>  main_img.setIcon(new javax.swing.ImageIcon(</p><p>  getClass().getResource("/image/main_8.jpg"))); // NOI18N</p><p><b>  }&

35、lt;/b></p><p><b>  }</b></p><p>  }.start();</p><p>  6.2按學號查找學生信息時相應查詢按鈕的監(jiān)聽事件</p><p>  protected void jButton1ActionPerformed(ActionEvent evt) {</p&g

36、t;<p>  // TODO Auto-generated method stub</p><p>  String id = textfield.getText();</p><p>  AboutStudent aboutstudent = new AboutStudent();</p><p>  if(id != null &&am

37、p; !id.equals("")){</p><p><b>  try{</b></p><p>  Student student = aboutstudent.findbyId(id);</p><p>  if(student != null)</p><p><b>  {<

38、;/b></p><p>  tarea.setText(student.toString());</p><p><b>  }else{</b></p><p>  JOptionPane.showConfirmDialog(null, "該學生不存在!","消息",1);</p>

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

40、p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }else{</b></p><p>  JOptionPane.showConfirmDialog(null, "請輸入編號!","消息"

41、;,1);</p><p><b>  }</b></p><p><b>  }</b></p><p>  6.3按班號查看學生信息時的響應按鈕的事件</p><p>  private Object[][] getResults(List<Student>list){</p&

42、gt;<p>  Object[][] results = new Object[list.size()][head.length];</p><p>  results[0][0] = "學號";</p><p>  results[0][1] = "姓名";</p><p>  results[0][2] =

43、 "班級";</p><p>  for(int i = 1;i < list.size();i++)</p><p><b>  {</b></p><p>  //Score score = list.get(i);</p><p>  results[i][0] = list.get(i)

44、.getSnum();</p><p>  results[i][1] = list.get(i).getSname();</p><p>  results[i][2] = list.get(i).getSclass();</p><p>  System.out.println(list.get(i)+String.valueOf(i));</p>

45、<p><b>  }</b></p><p>  return results;</p><p><b>  }</b></p><p>  /*每次類通過start()函數(shù)來創(chuàng)建新的對象實現(xiàn)方法*/</p><p>  public static void start() {<

46、/p><p>  java.awt.EventQueue.invokeLater(new Runnable() {</p><p>  public void run() {</p><p>  new BasicInforClass().setVisible(true);</p><p><b>  }</b></p

47、><p><b>  });</b></p><p><b>  }</b></p><p>  6.4添加學生信息時通過傳遞學生信息使用SQL語句對數(shù)據(jù)進行操作</p><p>  public boolean AddInformation(Student student)throws Excepti

48、on{/*添加學生信息*/</p><p>  String sql = "insert into Student values(?,?,?)";</p><p>  PreparedStatement stm = null;</p><p>  boolean flag = false;</p><p><b>

49、;  try{</b></p><p>  stm = dbc.prepareStatement(sql);</p><p>  stm.setString(1, student.getSnum());</p><p>  stm.setString(2, student.getSname());</p><p>  stm.se

50、tString(3, student.getSclass());</p><p>  if(stm.executeUpdate() > 0){</p><p>  flag = true;</p><p><b>  }</b></p><p>  }catch(Exception e){</p>&

51、lt;p><b>  throw e;</b></p><p><b>  }finally{</b></p><p><b>  try{</b></p><p>  if(stm !=null){</p><p>  stm.close();</p>&

52、lt;p><b>  }</b></p><p>  }catch(Exception e){}</p><p><b>  }</b></p><p>  return flag;</p><p><b>  }</b></p><p>  6.

53、5通過傳遞信息使用SQL語句查看優(yōu)秀率</p><p>  public LinkedList <Score> PassbyE()throws Exception{/*英語優(yōu)秀率*/</p><p>  String sql = "select * from Cgrade where EScore >= 90 order by EScore DEsc"

54、;</p><p>  LinkedList<Score> scores = new LinkedList<Score>();</p><p><b>  try{</b></p><p>  PreparedStatement stm = dbc.prepareStatement(sql);</p>&l

55、t;p>  ResultSet rm = stm.executeQuery();</p><p>  while(rm.next())</p><p><b>  {</b></p><p>  Score s = new Score();</p><p>  s.setSnum(rm.getString(1));

56、</p><p>  s.setCScore(rm.getFloat(2));</p><p>  s.setEScore(rm.getFloat(3));</p><p>  s.setMScore(rm.getFloat(4));</p><p>  System.out.println(rm.getString(1) + rm.getS

57、tring(2)+rm.getString(3));</p><p>  scores.add(s);</p><p><b>  }</b></p><p>  }catch(Exception e)</p><p><b>  {</b></p><p><b>

58、;  throw e;</b></p><p><b>  }</b></p><p>  return scores;</p><p><b>  }</b></p><p><b>  七、總結(jié)</b></p><p>  我主要的是文檔

59、,我們之所以選擇學生成績管理系統(tǒng),是由于它比較接近我們的生活,期末考試完了就會出現(xiàn)查看成績的表現(xiàn)。我們的進度是同步的數(shù)據(jù)庫建庫、建表、JAVA的界面的實現(xiàn),查資料以及文檔的制作等是同步進行的,在開工之前的我們首先在文本中理解之間觀點和找出共同地方進行整理學生成績管理系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)以及之間的關(guān)系,避免了數(shù)據(jù)的關(guān)系建立錯誤,導致一步錯,步步錯的情況。減少了多余的改正與問題的更多化,在制作文檔的過程中,自己的收獲比較大的是,對文檔的效果和文字

溫馨提示

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

評論

0/150

提交評論