版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 概述3</b></p><p><b> 一、課題介紹3</b></p><p> 二、目的和要求3</p><p><b> 三、任務(wù)計劃3</b></
2、p><p><b> 需求分析5</b></p><p> 一、學(xué)生管理系統(tǒng)的發(fā)展現(xiàn)狀5</p><p> 二、系統(tǒng)功能分析5</p><p> 三、系統(tǒng)結(jié)構(gòu)框圖5</p><p><b> 數(shù)據(jù)庫設(shè)計7</b></p><p>
3、 一、創(chuàng)建數(shù)據(jù)表的結(jié)構(gòu)7</p><p> 二、各表功能及其關(guān)系7</p><p> 系統(tǒng)模塊功能的實現(xiàn)與界面設(shè)計8</p><p> 一、系統(tǒng)主要模塊8</p><p><b> 二、歡迎界面9</b></p><p> 三、主菜單界面9</p>
4、<p><b> 四、子菜單10</b></p><p> 五、學(xué)生信息錄入11</p><p> 六、學(xué)生信息查找12</p><p> 七、學(xué)生信息刪除13</p><p> 八、學(xué)生信息修改14</p><p><b> 課程設(shè)計心得15
5、</b></p><p> 一、程序結(jié)構(gòu)設(shè)計培養(yǎng)15</p><p> 二、書寫習(xí)慣養(yǎng)成15</p><p> 三、注意程序簡潔15</p><p><b> 總結(jié)16</b></p><p><b> 參考文獻(xiàn)17</b></p&
6、gt;<p> 附錄:項目源代碼18</p><p> 一、數(shù)據(jù)庫連接(DbConnection.java)18</p><p> 二、學(xué)生信息數(shù)據(jù)庫管理(Student_Dao.java)18</p><p> 三、歡迎界面(Welcome.java)23</p><p> 四、主菜單界面(Menu.
7、java)24</p><p> 五、子菜單界面(Son_Menu.java)27</p><p> 六、添加功能(Add_Menu.java)31</p><p> 七、查找功能(Find_Menu.java)34</p><p> 八、刪除功能(Delet_Menu.java)36</p><
8、p> 九、修改功能(Change_Menu.java)38</p><p><b> 概述</b></p><p><b> 課題介紹</b></p><p> 本次課程設(shè)計要求實現(xiàn)一個面向?qū)W生信息的管理系統(tǒng)。學(xué)生信息系統(tǒng)是一個非常通用的管理系統(tǒng)。很多大、中、小學(xué)校都需要擁有自己的學(xué)生檔案管理系統(tǒng),以便對
9、本校學(xué)生的基本信息和學(xué)習(xí)情況進(jìn)行管理,另一方面,較完整的學(xué)校信息管理系統(tǒng)同樣也需要有學(xué)生信息管理系統(tǒng)的支持。</p><p> 由通用的學(xué)生相關(guān)數(shù)據(jù)分析可知,系統(tǒng)包括院系管理、學(xué)生基本信息管理、課程管理、學(xué)生從成績管理等主要功能。</p><p> 該系統(tǒng)要求使用JAVA和MySQL作為開發(fā)工具和數(shù)據(jù)庫管理系統(tǒng),因此,系統(tǒng)設(shè)計涉及系統(tǒng)功能設(shè)計、數(shù)據(jù)庫設(shè)計和系統(tǒng)界面等幾個方面內(nèi)容。<
10、;/p><p><b> 目的和要求</b></p><p> 了解JAVA語言的特點及使用的范圍,掌握開發(fā)軟件平臺的搭建。</p><p> 要求使用JAVA和MySQL開發(fā)一個學(xué)生信息管理系統(tǒng),系統(tǒng)主要功能如下:</p><p><b> 院系信息管理</b></p><
11、p> 院系系統(tǒng)信息的錄入,包括院系編號、院系名稱等信息;</p><p> 院系信息的修改、刪除、查詢。</p><p><b> 學(xué)生基本信息管理</b></p><p> 學(xué)生基本信息的錄入,包括學(xué)號、姓名、性別、出生日期、所在院系、班級等信息;</p><p> 學(xué)生基本信息的修改、刪除、查詢。&l
12、t;/p><p><b> 課程設(shè)置管理</b></p><p> 課程信息的錄入,包括課程編號、課程名稱、學(xué)分、課程內(nèi)容等信息;</p><p> 課程信息的修改、刪除、查詢。</p><p><b> 學(xué)生成績管理</b></p><p> 學(xué)生成績的錄入,包括課程
13、編號、課程名稱、學(xué)分、課程內(nèi)容等信息;</p><p> 學(xué)生信息的修改、刪除、查詢。</p><p><b> 任務(wù)計劃</b></p><p> 考慮到本次課程設(shè)計是獨立完成,所以,不需要進(jìn)行細(xì)致的分工,只要對框架和時間進(jìn)行一定的規(guī)劃就行。</p><p><b> 需求分析</b>&l
14、t;/p><p> 學(xué)生管理系統(tǒng)的發(fā)展現(xiàn)狀</p><p> 經(jīng)過了一段時間的發(fā)展,當(dāng)今,各大高校普遍都有了相對完善的學(xué)生管理系統(tǒng),但在部分中小學(xué)中,這種高效的管理手段,仍未能全面普及。目前已有的學(xué)生管理系統(tǒng)存在界面和操作相對繁瑣,實現(xiàn)成本較高等缺點,仍需改進(jìn)。</p><p><b> 系統(tǒng)功能分析</b></p><p
15、> 由通用的學(xué)生相關(guān)數(shù)據(jù)分析可知,系統(tǒng)包括院系管理、學(xué)生基本信息管理、課程管理、學(xué)生從成績管理等主要功能。</p><p> 實現(xiàn)以上各模塊的功能,需要以下子功能:</p><p> 1數(shù)據(jù)庫連接的建立與斷開</p><p> 2數(shù)據(jù)庫的數(shù)據(jù)操作,包括插入、查詢、刪除、修改</p><p> 系統(tǒng)操作界面與數(shù)據(jù)庫操作相關(guān)聯(lián)&l
16、t;/p><p><b> 系統(tǒng)結(jié)構(gòu)框圖</b></p><p> 從系統(tǒng)功能表述可以看出,該系統(tǒng)可以實現(xiàn)幾個功能,根據(jù)這些功能設(shè)計出系統(tǒng)的功能模塊如 圖表 1所示:</p><p><b> 數(shù)據(jù)庫設(shè)計</b></p><p><b> 創(chuàng)建數(shù)據(jù)表的結(jié)構(gòu)</b></
17、p><p> (以學(xué)生基本信息管理系統(tǒng)為例)</p><p><b> 主要數(shù)據(jù)項</b></p><p> 學(xué)號、姓名、性別、出生年月、所在院系、所在班級</p><p><b> 數(shù)據(jù)類型及要求</b></p><p> 為操作方便,均定義為字符串。其中學(xué)號不得重復(fù)
18、。</p><p><b> MySQL建表語句</b></p><p><b> 各表功能及其關(guān)系</b></p><p> 本系統(tǒng)各表分別存儲相應(yīng)數(shù)據(jù)。</p><p> 涉及的數(shù)據(jù)表之間相對獨立,但仍有少量關(guān)聯(lián)。</p><p> 學(xué)生成績表 包含對 學(xué)生基本
19、信息表 和 課程設(shè)置表 的映射</p><p> 學(xué)生基本信息表 包含對 院系信息表 的映射</p><p> 系統(tǒng)模塊功能的實現(xiàn)與界面設(shè)計</p><p><b> 系統(tǒng)主要模塊</b></p><p> 本次課程設(shè)計的主要目的,是通過實踐,讓我對所學(xué)到的知識進(jìn)行考驗和鞏固。經(jīng)過一點時間的了解。設(shè)計出了系統(tǒng)的總
20、體框架,參看圖表 1。</p><p> 由于各模塊的功能及原理基本相同,只是涉及的數(shù)據(jù)類型有所不同,所以本次只對學(xué)生基本信息管理的功能進(jìn)行了較為全面的設(shè)計。由于時間關(guān)系,其余功能沒有進(jìn)行具體設(shè)計。(具體的在以下說明中會提及)</p><p><b> 系統(tǒng)界面設(shè)計如下:</b></p><p><b> 數(shù)據(jù)庫管理模塊:<
21、;/b></p><p> 模塊功能界面設(shè)計如下:</p><p><b> 歡迎界面</b></p><p> 實際運行效果(圖表 2)</p><p><b> 實現(xiàn)方法</b></p><p> 繼承了JPanel,并在構(gòu)造函數(shù)中建立JFrame做外框;
22、</p><p> 用JLabel顯示歡迎信息內(nèi)容;</p><p> 確定按鈕在監(jiān)聽到事件后,new出一個Menu類;</p><p><b> 主菜單界面</b></p><p> 實際運行效果(圖表 3)</p><p><b> 實現(xiàn)方法</b></p
23、><p> 繼承JFrame類,在內(nèi)部建立的JPanel插入JButton;</p><p> 定義相應(yīng)按鈕的響 應(yīng)事件,調(diào)用子菜單的不同建立函數(shù)(如new Son_menu().studentmenu(););</p><p><b> 子菜單</b></p><p> 實際運行效果(圖表 4)</p>
24、<p><b> 實現(xiàn)方法</b></p><p> 建立JFrame,JTable,JButton等工具;</p><p><b> 建立數(shù)據(jù)庫鏈接;</b></p><p> 將數(shù)據(jù)庫里的數(shù)據(jù)逐個讀入到JTable類;</p><p> 對JButton加入ActionL
25、istener,并關(guān)聯(lián)相應(yīng)的功能菜單,如:</p><p><b> 學(xué)生信息錄入</b></p><p> 實際運行效果(圖表5)</p><p><b> 實現(xiàn)方法</b></p><p> 由輸入的學(xué)生信息構(gòu)造一個Student類;</p><p> 利用SQ
26、L語句,將Student類插入到數(shù)據(jù)庫;</p><p><b> 學(xué)生信息查找</b></p><p> 1.實際運行效果(圖標(biāo) 6)</p><p><b> 實現(xiàn)方法</b></p><p> 1)由輸入的學(xué)號,利用SQL語句找到相關(guān)數(shù)據(jù),返回一個Student類;</p>
27、<p> 2)有則將student的相關(guān)信息顯示到JTextArea上,沒有則顯示“學(xué)生信息未找到”;</p><p><b> 學(xué)生信息刪除</b></p><p> 實際運行效果(圖表 7)</p><p><b> 實現(xiàn)方法</b></p><p> 應(yīng)用查找功能相似的
28、原理先搜索到要刪除的信息;</p><p> 利用SQL語句將找到的信息刪除,并顯示“學(xué)生信息以刪除”。</p><p><b> 學(xué)生信息修改</b></p><p><b> 實際運行效果</b></p><p><b> 實現(xiàn)方法</b></p>&
29、lt;p> 應(yīng)用查找功能相似的原理先搜索到要修改的信息;</p><p> 應(yīng)用刪除功能相似的原理刪除要修改的信息;</p><p> 調(diào)用錄入類,錄入要修改的新信息;</p><p><b> 課程設(shè)計心得</b></p><p> 程序結(jié)構(gòu)設(shè)計思路培養(yǎng)</p><p> 為了
30、簡化程序,我并沒有為每個窗口都建一個類,而是把類似的窗口例如student_add,depart_add等建一個類Add_Menu,調(diào)用不同的函數(shù)建立不同窗口,如:student_add(),depart_add();</p><p><b> 書寫習(xí)慣的養(yǎng)成</b></p><p> 好的書寫習(xí)慣是一個優(yōu)秀程序員的必備品質(zhì)。在寫代碼的時候要隨時注意書寫的格式。&
31、lt;/p><p> 如:1.賦值語句的“=”的左右應(yīng)該用空格隔開;</p><p><b> a=1;</b></p><p><b> 改為</b></p><p><b> a = 1;</b></p><p><b> 這樣更
32、為清晰;</b></p><p> 2.大括號一定要對齊;</p><p><b> class {</b></p><p><b> ……</b></p><p> public void …..{</p><p><b> …….</
33、b></p><p><b> }</b></p><p><b> }</b></p><p><b> 注意程序簡潔</b></p><p> 在逐漸適應(yīng)面向?qū)ο缶幊桃院?。依然?yīng)道保持過去在編程中的一些好習(xí)慣。使用Vector等,也需要留意效率。不能只顧用法方
34、便。</p><p><b> 總結(jié)</b></p><p> 系統(tǒng)設(shè)計過程中,主要涉及了包括JAVA基本語法、AWT,Java Swing,MySQL等方面的相關(guān)知識。設(shè)計中遇到不少問題,到圖書館查閱了不少資料,向王宋君老師請教過不少問題,老師都一一細(xì)心解答,非常感謝。由于時間倉促,原本設(shè)想的功能還沒有一一實現(xiàn),待進(jìn)一步完善。</p><p&
35、gt;<b> 參考文獻(xiàn)</b></p><p> 《Thinking in Java(Java編程思想)》第四版,機械工業(yè)出版社,【美】Bruce Eckel著,陳昊鵬譯;</p><p> 《精通Java Swing程序設(shè)計》中國鐵道出版社,林智揚、范明翔、陳錦輝 編著;</p><p> 《深入淺出Java Swing程序設(shè)計》中
36、國鐵道出版社,林智揚、范明翔、陳錦輝 編著;</p><p> 《Java GUI程序設(shè)計》清華大學(xué)出版社,肖剛 等編著;</p><p> 《Java信息系統(tǒng)設(shè)計與開發(fā)實例》機械工業(yè)出版社,黃明、梁旭、曹利超 編著;</p><p> 《Java范例大全》機械工業(yè)出版社,尹繼平、張帆 編著;</p><p><b> 附錄
37、:項目源代碼</b></p><p> 數(shù)據(jù)庫連接(DbConnection.java)</p><p> package dao;</p><p> import java.sql.Connection;</p><p> import java.sql.DriverManager;</p><p&g
38、t; import java.sql.SQLException;</p><p> public class DbConnection {</p><p> public static Connection getConnection(){</p><p> Connection con = null;</p><p> Strin
39、g url = "jdbc:mysql://localhost:3306/java";</p><p> String userName= "root";</p><p> String password = "l057788y";</p><p><b> try {</b>&
40、lt;/p><p> Class.forName("com.mysql.jdbc.Driver");</p><p> con = DriverManager.getConnection(url,userName,password);</p><p> System.out.println("數(shù)據(jù)庫連接成功");</p
41、><p> } catch (ClassNotFoundException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p> return null;</p><p> } catch (
42、SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p><b> }</b></p><p> return con;</p><p><b
43、> }</b></p><p> public static void closeConnection(Connection con){</p><p> if(con!=null){</p><p><b> try {</b></p><p> con.close();</p>
44、<p> con = null;</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p><b> }</b><
45、/p><p><b> }</b></p><p><b> }</b></p><p> public static void main(String args[]){</p><p> getConnection();</p><p><b> }<
46、/b></p><p><b> }</b></p><p><b> }</b></p><p> 學(xué)生信息數(shù)據(jù)庫管理(Student_Dao.java)</p><p> package dao;</p><p> import java.sql.Con
47、nection;</p><p> import java.sql.PreparedStatement;</p><p> import java.sql.ResultSet;</p><p> import java.sql.SQLException;</p><p> import java.sql.Statement;</
48、p><p> import java.util.ArrayList;</p><p> import model.Depart;</p><p> import model.Student;</p><p> public class StudentDao {</p><p> public boolean ad
49、dInfo(Student student){</p><p> boolean flag;</p><p> Connection con = DbConnection.getConnection();</p><p> PreparedStatement ps;</p><p> String sql = ""
50、;</p><p> //ResultSet rs;</p><p><b> try {</b></p><p> sql = "insert into student values(?,?,?,?,?,?)"; //用問號代替</p><p> ps = con.prepareStat
51、ement(sql);</p><p> ps.setInt(1, student.getId());</p><p> ps.setString(2, student.getName());</p><p> ps.setString(3, student.getSex());</p><p> ps.setString(4, st
52、udent.getBorn_date());</p><p> ps.setString(5, student.getDepart_id());</p><p> ps.setString(6, student.getClass_name());</p><p> ps.execute();</p><p> System.out.p
53、rintln("添加了一條記錄");</p><p> flag = true;</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p&g
54、t;<p> flag = false;</p><p><b> }finally{</b></p><p> DbConnection.closeConnection(con);</p><p><b> }</b></p><p> return flag;</
55、p><p><b> }</b></p><p> public ArrayList<Student> findAll(){</p><p> ArrayList<Student> students = new ArrayList<Student>();</p><p> Conn
56、ection con = DbConnection.getConnection();</p><p> Statement sta;</p><p> ResultSet rs;</p><p><b> try {</b></p><p> sta = con.createStatement();</p&
57、gt;<p> rs = sta.executeQuery("SELECT * FROM student"); //從表depart中查詢所有數(shù)據(jù)</p><p> while(rs.next()){</p><p> Student student = new Student();</p><p> student.se
58、tId(rs.getInt(1));</p><p> student.setName(rs.getString(2));</p><p> student.setSex(rs.getString(3));</p><p> student.setBorn_date(rs.getString(4));</p><p> student
59、.setDepart_id(rs.getString(5));</p><p> student.setClass_name(rs.getString(6));</p><p> System.out.println(student.getName());</p><p> students.add(student);</p><p>
60、<b> }</b></p><p> rs.close();</p><p> sta.close();</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p>
61、e.printStackTrace();</p><p><b> }finally{</b></p><p> DbConnection.closeConnection(con);</p><p><b> }</b></p><p> return students;</p>
62、<p><b> }</b></p><p> public Student findOne(int id){</p><p> Student student = new Student();</p><p> Connection con = DbConnection.getConnection();</p>
63、;<p> PreparedStatement ps;</p><p> String sql = "";</p><p> ResultSet rs;</p><p><b> try {</b></p><p> sql = "SELECT * FROM stud
64、ent where id=?";</p><p> ps = con.prepareStatement(sql);</p><p> ps.setInt(1, id);</p><p> rs = ps.executeQuery(); //從表depart中查詢所有數(shù)據(jù)</p><p> if(rs.next()){
65、</p><p> student.setId(rs.getInt("id")); //注意數(shù)據(jù)類型要對應(yīng)</p><p> student.setName(rs.getString("Name"));</p><p> student.setSex(rs.getString("Sex"));<
66、;/p><p> student.setBorn_date(rs.getString("birthday"));</p><p> student.setDepart_id(rs.getString("Depart"));</p><p> student.setClass_name(rs.getString("C
67、lass"));</p><p> System.out.println("id:"+student.getId()+" name:"+student.getName());</p><p><b> }else{</b></p><p> System.out.println(&quo
68、t;沒有數(shù)據(jù)");</p><p><b> }</b></p><p> rs.close();</p><p> ps.close();</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated
69、catch block</p><p> e.printStackTrace();</p><p><b> }finally{</b></p><p> DbConnection.closeConnection(con);</p><p><b> }</b></p><
70、;p> return student;</p><p><b> }</b></p><p> public boolean deleteInfo(Student student){</p><p> boolean flag;</p><p> Connection con = DbConnection
71、.getConnection();</p><p> PreparedStatement ps;</p><p> String sql = "";</p><p><b> try {</b></p><p> sql = "delete from student where i
72、d=?"; //用問號代替</p><p> ps = con.prepareStatement(sql);</p><p> ps.setInt(1, student.getId());</p><p> ps.execute();</p><p> System.out.println("成功刪除了一條記錄&q
73、uot;);</p><p> flag = true;</p><p> } catch (SQLException e) {</p><p> // TODO Auto-generated catch block</p><p> e.printStackTrace();</p><p> flag =
74、 false;</p><p><b> }finally{</b></p><p> DbConnection.closeConnection(con);</p><p><b> }</b></p><p> return flag;</p><p><b&
75、gt; }</b></p><p><b> }</b></p><p> 歡迎界面(Welcome.java)</p><p> package menu;</p><p> import java.awt.BorderLayout;</p><p> import ja
76、va.awt.Font;</p><p> import java.awt.GridLayout;</p><p> import java.awt.event.MouseAdapter;</p><p> import java.awt.event.MouseEvent;</p><p> import java.awt.event
77、.WindowAdapter;</p><p> import java.awt.event.WindowEvent;</p><p> import javax.swing.*;</p><p> public class Welcome {</p><p> JFrame w = new JFrame("manageme
78、ntsystem");</p><p> JPanel p1 = new JPanel(); </p><p> JPanel p2 = new JPanel(); </p><p> JLabel l = new JLabel("歡迎進(jìn)入學(xué)生信息管理系統(tǒng)!");</p><p> JButton b =
79、 new JButton("確定");</p><p> Welcome(){</p><p> w.addWindowListener(new Wind());</p><p> b.addMouseListener(new Monitor2());</p><p> Font font = new
80、 Font( "歡迎進(jìn)入學(xué)生信息管理系統(tǒng)!", Font.PLAIN, 40); </p><p> l.setFont(font);</p><p> w.add(p1,BorderLayout.CENTER);</p><p> w.add(p2,BorderLayout.SOUTH);</p><p>
81、; p1.add(l);</p><p> l.setBounds(p1.WIDTH/2-100,p1.HEIGHT/2-10,200,20); </p><p> p2.add(b);</p><p> b.setBounds(p2.WIDTH/2-10,p2.HEIGHT/2-6,20,12);</p><p> w.se
82、tBounds(400, 200, 600, 200);</p><p> w.setVisible(true);</p><p><b> }</b></p><p> private class Monitor2 extends MouseAdapter{</p><p> public void mouse
83、Pressed(MouseEvent e) {</p><p> new Menu();</p><p> w.setVisible(false);</p><p><b> }</b></p><p><b> }</b></p><p> public stat
84、ic void main(String args[]){</p><p> new Welcome();</p><p><b> }</b></p><p> private class Wind extends WindowAdapter{</p><p> public void windowClosing
85、(WindowEvent e) {</p><p> w.setVisible(false);</p><p> System.exit(0);</p><p><b> }</b></p><p><b> }</b></p><p><b> }&l
86、t;/b></p><p> 主菜單界面 (Menu.java) </p><p> package menu;</p><p> import java.awt.*;</p><p> import java.awt.event.ActionEvent;</p><p> import java.a
87、wt.event.ActionListener;</p><p> import java.awt.event.WindowAdapter;</p><p> import java.awt.event.WindowEvent;</p><p> import javax.swing.*;</p><p> public class
88、Menu {</p><p> JFrame f = new JFrame("菜單");</p><p> JPanel p = new JPanel();</p><p><b> Menu(){</b></p><p> JButton b_depart = new JButton(&qu
89、ot;院系信息");</p><p> JButton b_student = new JButton("學(xué)生信息");</p><p> JButton b_course = new JButton("課程信息");</p><p> JButton b_score = new JButton("成
90、績信息");</p><p> JButton ex = new JButton("退出");</p><p> b_score.addActionListener(new Monitor2());</p><p> ex.addActionListener(new Monitor2());</p><p>
91、; b_depart.addActionListener(new Monitor2());</p><p> b_student.addActionListener(new Monitor2());</p><p> b_course.addActionListener(new Monitor2());</p><p> f.addWindowListene
92、r(new Wind());</p><p><b> f.add(p);</b></p><p> p.setLayout(new GridLayout(1,2));</p><p> JLabel l = new JLabel();</p><p> JPanel p2 = new JPanel();<
93、/p><p><b> p.add(l);</b></p><p> p.add(p2);</p><p> p2.setLayout(new GridLayout(5,1));</p><p> p2.add(b_depart);</p><p> p2.add(b_student);&l
94、t;/p><p> p2.add(b_course);</p><p> p2.add(b_score);</p><p> p2.add(ex);</p><p> f.setBounds(400,200,400,400);</p><p> f.setVisible(true);</p><
95、;p><b> }</b></p><p> public static void main(String args[]){</p><p> new Menu();</p><p><b> }</b></p><p> private class Wind extends Win
96、dowAdapter{</p><p> public void windowClosing(WindowEvent e) {</p><p> f.setVisible(false);</p><p> System.exit(0);</p><p><b> }</b></p><p&g
97、t;<b> }</b></p><p> private class Monitor2 implements ActionListener{</p><p> public void actionPerformed(ActionEvent e) {</p><p> if(e.getActionCommand().equals(&qu
98、ot;退出")){</p><p> new Menu();</p><p> System.exit(0); </p><p><b> }</b></p><p> if(e.getActionCommand().equals("學(xué)生信息")){</p>&
99、lt;p> new Son_menu().studentmenu();</p><p> f.setVisible(false); </p><p><b> }</b></p><p> if(e.getActionCommand().equals("院系信息")){</p><p
100、> new Son_menu().departmenu();</p><p> f.setVisible(false); </p><p><b> }</b></p><p> if(e.getActionCommand().equals("課程信息")){</p><p>
101、 new Son_menu().coursemenu();</p><p> f.setVisible(false); </p><p><b> }</b></p><p> if(e.getActionCommand().equals("成績信息")){</p><p> new
102、Son_menu().scoremenu();</p><p> f.setVisible(false); </p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p>
103、;<b> }</b></p><p> 子菜單界面(Son_Menu.java)</p><p> package menu;</p><p> import java.awt.BorderLayout;</p><p> import java.awt.GridLayout;</p><
104、p> import java.awt.event.ActionEvent;</p><p> import java.awt.event.ActionListener;</p><p> import java.util.ArrayList;</p><p> import java.util.Vector;</p><p>
105、 import javax.swing.*;</p><p> import javax.swing.table.DefaultTableModel;</p><p> import model.Student;</p><p> import dao.StudentDao;</p><p> public class Son_men
106、u {</p><p> JFrame f ;</p><p> JPanel p1 = new JPanel();</p><p> JPanel p2 = new JPanel();</p><p> JButton b_add = new JButton("錄入");</p><p>
107、; JButton b_delet = new JButton("刪除");</p><p> JButton b_change = new JButton("修改");</p><p> JButton b_find = new JButton("查找");</p><p> JButton b_
108、return = new JButton("返回");</p><p><b> JTable t;</b></p><p> DefaultTableModel tableModel= null;</p><p> public static void main(String args[]){</p>
109、<p> new Son_menu().studentmenu();</p><p><b> }</b></p><p><b> //學(xué)生信息菜單</b></p><p> public void studentmenu(){</p><p> f = new JFrame
110、("學(xué)生信息");</p><p> ArrayList scan = new ArrayList();</p><p> Vector columnNames = new Vector();</p><p> columnNames.add("學(xué)號");</p><p> columnName
111、s.add("姓名");</p><p> columnNames.add("性別");</p><p> columnNames.add("出生年月");</p><p> columnNames.add("學(xué)院代碼");</p><p> column
112、Names.add("所在班級");</p><p> tableModel = new DefaultTableModel(columnNames,0);</p><p> tableModel.addRow(columnNames);</p><p> StudentDao ddao = new StudentDao();</p&
113、gt;<p> scan = ddao.findAll();</p><p> for(int i=0;i<scan.size();i++){</p><p> Vector v = new Vector(); </p><p> Student student = (Student)scan.get(i);</p><
114、;p> v.add(student.getId());</p><p> v.add(student.getName());</p><p> v.add(student.getSex());</p><p> v.add(student.getBorn_date());</p><p> v.add(student.getD
115、epart_id());</p><p> v.add(student.getClass_name());</p><p> tableModel.addRow(v);</p><p><b> }</b></p><p> t = new JTable(tableModel);</p><p
116、> t.setVisible(true);</p><p> f.setLayout(new BorderLayout());</p><p> f.add(p1,BorderLayout.NORTH);</p><p> f.add(p2,BorderLayout.SOUTH);</p><p> f.setBounds(4
117、00,200,600,400);</p><p> p1.add(t);</p><p> b_add.setActionCommand("學(xué)生錄入");</p><p> b_delet.setActionCommand("學(xué)生刪除");</p><p> b_change.setAction
118、Command("學(xué)生修改");</p><p> b_find.setActionCommand("學(xué)生查找");</p><p> b_add.addActionListener(new Monitor2());</p><p> b_delet.addActionListener(new Monitor2());&
119、lt;/p><p> b_change.addActionListener(new Monitor2());</p><p> b_find.addActionListener(new Monitor2());</p><p> b_return.addActionListener(new Monitor2());</p><p> p2
120、.add(b_add);</p><p> p2.add(b_delet);</p><p> p2.add(b_change);</p><p> p2.add(b_find);</p><p> p2.add(b_return);</p><p> f.setVisible(true);</p>
121、;<p><b> }</b></p><p><b> //院系信息菜單</b></p><p> public void departmenu(){</p><p> f = new JFrame("院系信息");</p><p> t = new J
122、Table(100,2);</p><p> t.setVisible(true);</p><p> f.setLayout(new BorderLayout());</p><p> f.add(p1,BorderLayout.NORTH);</p><p> f.add(p2,BorderLayout.SOUTH);</p
123、><p> f.setBounds(400,200,400,400);</p><p> p1.add(t);</p><p> b_add.setActionCommand("院系錄入");</p><p> b_delet.setActionCommand("院系刪除");</p>
124、<p> b_change.setActionCommand("院系修改");</p><p> b_find.setActionCommand("院系查找");</p><p> b_add.addActionListener(new Monitor2());</p><p> b_delet.addAc
125、tionListener(new Monitor2());</p><p> b_change.addActionListener(new Monitor2());</p><p> b_find.addActionListener(new Monitor2());</p><p> b_return.addActionListener(new Monitor
126、2());</p><p> p2.add(b_add);</p><p> p2.add(b_delet);</p><p> p2.add(b_change);</p><p> p2.add(b_find);</p><p> p2.add(b_return);</p><p>
127、 f.setVisible(true);</p><p><b> }</b></p><p><b> //課程信息菜單</b></p><p> public void coursemenu(){</p><p> f = new JFrame("課程信息");&l
128、t;/p><p> t = new JTable(100,2);</p><p> t.setVisible(true);</p><p> f.setLayout(new BorderLayout());</p><p> f.add(p1,BorderLayout.NORTH);</p><p> f.add
129、(p2,BorderLayout.SOUTH);</p><p> f.setBounds(400,200,400,400);</p><p> p1.add(t);</p><p> b_add.setActionCommand("課程錄入");</p><p> b_delet.setActionCommand
130、("課程刪除");</p><p> b_change.setActionCommand("課程修改");</p><p> b_find.setActionCommand("課程查找");</p><p> b_add.addActionListener(new Monitor2());</p
131、><p> b_delet.addActionListener(new Monitor2());</p><p> b_change.addActionListener(new Monitor2());</p><p> b_find.addActionListener(new Monitor2());</p><p> b_return
132、.addActionListener(new Monitor2());</p><p> p2.add(b_add);</p><p> p2.add(b_delet);</p><p> p2.add(b_change);</p><p> p2.add(b_find);</p><p> p2.add(b
133、_return);</p><p> f.setVisible(true);</p><p><b> }</b></p><p><b> //成績信息菜單</b></p><p> public void scoremenu(){</p><p> f = ne
134、w JFrame("成績信息");</p><p> t = new JTable(100,2);</p><p> t.setVisible(true);</p><p> f.setLayout(new BorderLayout());</p><p> f.add(p1,BorderLayout.NORTH)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java+mysql學(xué)生信息管理系統(tǒng)課程設(shè)計報告
- java課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)java課程設(shè)計
- java課程設(shè)計---學(xué)生信息管理系統(tǒng)
- java課程設(shè)計--學(xué)生信息管理系統(tǒng)
- java課程設(shè)計-學(xué)生信息管理系統(tǒng)
- java課程設(shè)計--基于cs學(xué)生信息管理系統(tǒng)
- java課程設(shè)計---學(xué)生信息管理系統(tǒng)
- java課程設(shè)計報告--學(xué)生信息管理系統(tǒng)
- java課程設(shè)計報告---學(xué)生信息管理系統(tǒng)
- 學(xué)生個人信息管理系統(tǒng)java課程設(shè)計
- java課程設(shè)計--員工信息管理系統(tǒng)
- 高考信息管理系統(tǒng)--java課程設(shè)計
- java課程設(shè)計-- 學(xué)生個人信息管理系統(tǒng)
- java課程設(shè)計--員工信息管理系統(tǒng)
- 學(xué)生個人信息管理系統(tǒng)java課程設(shè)計
- java課程設(shè)計--員工信息管理系統(tǒng)報告
- java學(xué)生基本信息管理課程設(shè)計
- 面向?qū)ο笳n程設(shè)計---用java開發(fā)的學(xué)生信息管理系統(tǒng)
- 圖書信息管理系統(tǒng)java課程設(shè)計
評論
0/150
提交評論