精編JAVA課程設(shè)計基于mysql的學(xué)生信息管理系統(tǒng)資料_第1頁
精編JAVA課程設(shè)計基于mysql的學(xué)生信息管理系統(tǒng)資料_第2頁
精編JAVA課程設(shè)計基于mysql的學(xué)生信息管理系統(tǒng)資料_第3頁
精編JAVA課程設(shè)計基于mysql的學(xué)生信息管理系統(tǒng)資料_第4頁
精編JAVA課程設(shè)計基于mysql的學(xué)生信息管理系統(tǒng)資料_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄概述 3一、課題介紹 3二、目的和要求 3三、任務(wù)計劃 3需求分析 5一、學(xué)生管理系統(tǒng)的發(fā)展現(xiàn)狀 5二、系統(tǒng)功能分析 5三、系統(tǒng)結(jié)構(gòu)框圖 5數(shù)據(jù)庫設(shè)計 7一、創(chuàng)建數(shù)據(jù)表的結(jié)構(gòu) 7二、各表功能及其關(guān)系 7系統(tǒng)模塊功能的實現(xiàn)與界面設(shè)計 8一、系統(tǒng)主要模塊 8二、歡迎界面 9三、主菜單界面 錯誤!未定義書簽。四、子菜單 10五、學(xué)生信息錄入 11六、學(xué)生信息查找 12七、學(xué)生信息刪除 13八、學(xué)生信息修改 14課程設(shè)計心得 15一、程序結(jié)構(gòu)設(shè)計培養(yǎng) 15二、書寫習(xí)慣養(yǎng)成 15三、注意程序簡潔 15總結(jié) 16參考文獻(xiàn) 17附錄:項目源代碼 18一、 數(shù)據(jù)庫連接( DBCONNECTION.JAVA

2、) 18二、 學(xué)生信息數(shù)據(jù)庫管理( STUDENT_DAO.JAVA)24三、 歡迎界面( WELCOME.JAVA) 23四、主菜單界面( M ENU.JAVA) 24五、子菜單界面( SON_MENU.JAVA) 27六、添加功能(ADD_M ENU.JAVA) 31七、查找功能(FIND_MENU.JAVA) 34八、刪除功能(DELET_MENU.JAVA) 36九、修改功能(CHANGE_M ENU.JAVA) 錯誤!未定義書簽。概述一、課題介紹本次課程設(shè)計要求實現(xiàn)一個面向?qū)W生信息的管理系統(tǒng)。 學(xué)生信息系統(tǒng)是一個非常通 用的管理系統(tǒng)。很多大、中、小學(xué)校都需要擁有自己的學(xué)生檔案管理系統(tǒng)

3、,以便對本校 學(xué)生的基本信息和學(xué)習(xí)情況進(jìn)行管理, 另一方面, 較完整的學(xué)校信息管理系統(tǒng)同樣也需 要有學(xué)生信息管理系統(tǒng)的支持。由通用的學(xué)生相關(guān)數(shù)據(jù)分析可知, 系統(tǒng)包括院系管理、 學(xué)生基本信息管理、 課程管 理、學(xué)生從成績管理等主要功能。該系統(tǒng)要求使用 JAVA 和 MySQL 作為開發(fā)工具和數(shù)據(jù)庫管理系統(tǒng),因此,系統(tǒng)設(shè) 計涉及系統(tǒng)功能設(shè)計、數(shù)據(jù)庫設(shè)計和系統(tǒng)界面等幾個方面內(nèi)容。二、目的和要求1. 了解 JAVA 語言的特點及使用的范圍,掌握開發(fā)軟件平臺的搭建。2. 要求使用 JAVA 和 MySQL 開發(fā)一個學(xué)生信息管理系統(tǒng),系統(tǒng)主要功能如下:1) 院系信息管理院系系統(tǒng)信息的錄入,包括院系編號、院

4、系名稱等信息; 院系信息的修改、刪除、查詢。2) 學(xué)生基本信息管理學(xué)生基本信息的錄入, 包括學(xué)號、 姓名、性別、出生日期、 所在院系、班級等信息; 學(xué)生基本信息的修改、刪除、查詢。3) 課程設(shè)置管理課程信息的錄入,包括課程編號、課程名稱、學(xué)分、課程內(nèi)容等信息; 課程信息的修改、刪除、查詢。4) 學(xué)生成績管理學(xué)生成績的錄入,包括課程編號、課程名稱、學(xué)分、課程內(nèi)容等信息; 學(xué)生信息的修改、刪除、查詢。三、任務(wù)計劃考慮到本次課程設(shè)計是獨立完成, 所以, 不需要進(jìn)行細(xì)致的分工, 只要對框架和時間進(jìn)行一定的規(guī)劃就行時間計劃執(zhí)行結(jié)果112月13日查閱相關(guān)資料 準(zhǔn)備好基礎(chǔ)知識查閱了 JAVA Swing,

5、MySQL等方面的相關(guān)資料。212月14日進(jìn)行需求分析得到需求分析總結(jié)。312月14日21日正式設(shè)計完成代碼設(shè)計及調(diào)試512月22日完成課程設(shè)計報告整理文件,并完成書面報告需求分析一、學(xué)生管理系統(tǒng)的發(fā)展現(xiàn)狀經(jīng)過了一段時間的發(fā)展,當(dāng)今,各大高校普遍都有了相對完善的學(xué)生管理系統(tǒng),但在部分中小學(xué)中,這種高效的管理手段,仍未能全面普及。目前已有的學(xué)生管理系統(tǒng)存 在界面和操作相對繁瑣,實現(xiàn)成本較高等缺點,仍需改進(jìn)。二、系統(tǒng)功能分析由通用的學(xué)生相關(guān)數(shù)據(jù)分析可知,系統(tǒng)包括院系管理、學(xué)生基本信息管理、課程管 理、學(xué)生從成績管理等主要功能S實現(xiàn)以上各模塊的功能,需要以下子功能:1數(shù)據(jù)庫連接的建立與斷開2數(shù)據(jù)庫的

6、數(shù)據(jù)操作,包括插入、查詢、刪除、修改3. 系統(tǒng)操作界面與數(shù)據(jù)庫操作相關(guān)聯(lián)三、系統(tǒng)結(jié)構(gòu)框圖從系統(tǒng)功能表述可以看出,該系統(tǒng)可以實現(xiàn)幾個功能,根據(jù)這些功能設(shè)計出系統(tǒng)的 功能模塊如圖表1所示:1因各模塊基本功能相近,故本文僅以學(xué)生基本信息管理功能為例圖表1學(xué)生信息管理系統(tǒng)功能模塊圖數(shù)據(jù)庫設(shè)計創(chuàng)建數(shù)據(jù)表的結(jié)構(gòu)(以學(xué)生基本信息管理系統(tǒng)為例)1. 主要數(shù)據(jù)項學(xué)號、姓名、性別、出生年月、所在院系、所在班級2. 數(shù)據(jù)類型及要求為操作方便,均定義為字符串。其中學(xué)號不得重復(fù)3. MySQL建表語句create table stude nt (id INT(11) PRIMARY KEY NOT NULL UNIQU

7、E,n ame ARCHAR(20),sex CHAR(1),birthday VARCHAR(20),depart ARCHAR(20),class ARCHAR(20);:、各表功能及其關(guān)系1. 本系統(tǒng)各表分別存儲相應(yīng)數(shù)據(jù)。2. 涉及的數(shù)據(jù)表之間相對獨立,但仍有少量關(guān)聯(lián)。1) 學(xué)生成績表包含對學(xué)生基本信息表和課程設(shè)置表的映射2) 學(xué)生基本信息表包含對院系信息表的映射系統(tǒng)模塊功能的實現(xiàn)與界面設(shè)計系統(tǒng)主要模塊本次課程設(shè)計的主要目的,是通過實踐,讓我對所學(xué)到的知識進(jìn)行考驗和鞏固。 經(jīng) 過一點時間的了解。設(shè)計出了系統(tǒng)的總體框架,參看圖表 1。由于各模塊的功能及原理基本相同,只是涉及的數(shù)據(jù)類型有所不

8、同,所以本次只對 學(xué)生基本信息管理的功能進(jìn)行了較為全面的設(shè)計。由于時間關(guān)系,其余功能沒有進(jìn)行具 體設(shè)計。(具體的在以下說明中會提及)系統(tǒng)界面設(shè)計如下:模塊名稱相關(guān)的類登錄界面welcome.class菜單界面Menu .class數(shù)據(jù)庫管理模塊:模塊名稱相關(guān)的類數(shù)據(jù)庫鏈接DbConn ecti on. class學(xué)生信息數(shù)據(jù)庫管理Stude ntDao.class院系信息數(shù)據(jù)庫管理DepartDao.class課程信息數(shù)據(jù)庫管理CourseDao.class成績信息數(shù)據(jù)庫管理ScoreDao.class模塊功能界面設(shè)計如下:模塊名稱相關(guān)的類子菜單Son_Men u.class添加功能Add_M

9、e nu.class查詢功能Fin d_Me nu .class刪除功能Delet_Me nu.class修改功能Chan ge Me nu .class歡迎界面1. 實際運行效果(圖表3)2. 實現(xiàn)方法1. 實際運行效果(圖表2)歡迎戰(zhàn)學(xué)生信息管理系玉!確定圖表2歡迎界面2. 實現(xiàn)方法1)繼承了 JPanel,并在構(gòu)造函數(shù)中建立 JFrame做外框;2)用JLabel顯示歡迎信息內(nèi)容;3)確定按鈕在監(jiān)聽到事件后,new出一個Menu類;三、主菜單界面1)繼承JFrame類,在內(nèi)部建立的JPa nel插入 JButton ;2)定義相應(yīng)按鈕的響 應(yīng)事件,調(diào)用子菜單的不同 建立函數(shù)(如 newS

10、on_menu( ).stude ntme nu();圖表3主菜單界面);_四、子菜單1. 實際運行效果(錯誤!未找到引用源。)圖表4子菜單2. 實現(xiàn)方法1) 建立 JFrame,JTable,JButton等工具;2) 建立數(shù)據(jù)庫鏈接;3) 將數(shù)據(jù)庫里的數(shù)據(jù)逐個讀入到JTable類;4) 對JButton加入ActionListener,并關(guān)聯(lián)相應(yīng)的功能菜單,如:if (e () + equals f學(xué)生錄入 ) f.setVisitole(false;new Add Menu(),student add(;五、學(xué)生信息錄入1. 實際運行效果(圖表5)圖表4錄入學(xué)生信息實現(xiàn)方法1)由輸入的學(xué)

11、生信息構(gòu)造一個Student類;2)利用SQL語句,將Student類插入到數(shù)據(jù)庫;六、學(xué)生信息查找1實際運行效果(圖標(biāo)6)圖表6查找學(xué)生信息實現(xiàn)方法1) 由輸入的學(xué)號,利用SQL語句找到相關(guān)數(shù)據(jù),返回一個 Student類;2) 有則將student的相關(guān)信息顯示到 JTextArea上,沒有則顯示“學(xué)生信息未找 到”;七、學(xué)生信息刪除1.實際運行效果(圖表7)圖表7學(xué)生信息刪除2. 實現(xiàn)方法1)應(yīng)用查找功能相似的原理先搜索到要刪除的信息;2)利用SQL語句將找到的信息刪除,并顯示“學(xué)生信息以刪除”八、學(xué)生信息修改1.實際運行效果啡別:出生日醐:1992-1-J縣隔1546所在EF級:070

12、5圖表8學(xué)生信息修改2. 實現(xiàn)方法1) 應(yīng)用查找功能相似的原理先搜索到要修改的信息;2) 應(yīng)用刪除功能相似的原理刪除要修改的信息;3) 調(diào)用錄入類,錄入要修改的新信息;課程設(shè)計心得一、程序結(jié)構(gòu)設(shè)計思路培養(yǎng)為了簡化程序,我并沒有為每個窗口都建一個類,而是把類似的窗口例如student_add depart_add等建一個類 Add_Menu,調(diào)用不同的函數(shù)建立不同窗口,如: student_add(),depart_add();二、書寫習(xí)慣的養(yǎng)成好的書寫習(xí)慣是一個優(yōu)秀程序員的必備品質(zhì)。 在寫代碼的時候要隨時注意書寫的格 式。如: 1.賦值語句的“ =”的左右應(yīng)該用空格隔開;a=1;改為a = 1

13、;這樣更為清晰;2.大括號一定要對齊;class public void .三、注意程序簡潔在逐漸適應(yīng)面向?qū)ο缶幊桃院?。依然?yīng)道保持過去在編程中的一些好習(xí)慣。使用Vector等,也需要留意效率。不能只顧用法方便??偨Y(jié)系統(tǒng)設(shè)計過程中,主要涉及了包括 JAVA 基本語法、 AWT , Java Swing,MySQL 等方面的相關(guān)知識。 設(shè)計中遇到不少問題, 到圖書館查閱了不少資料, 向王宋君老師請 教過不少問題,老師都一一細(xì)心解答,非常感謝。由于時間倉促,原本設(shè)想的功能還沒 有一一實現(xiàn),待進(jìn)一步完善。參考文獻(xiàn)1. Thinking in Java (Java編程思想)第四版,機(jī)械工業(yè)出版社,【美

14、】Bruce Eckel著,陳昊鵬譯;2. 精通Java Swing程序設(shè)計中國鐵道出版社,林智揚、范明翔、陳錦輝 編著;3. 深入淺出Java Swing程序設(shè)計中國鐵道出版社,林智揚、范明翔、陳錦輝 編著;4. Java GUI程序設(shè)計清華大學(xué)出版社,肖剛等編著;5. Java信息系統(tǒng)設(shè)計與開發(fā)實例機(jī)械工業(yè)出版社,黃明、梁旭、曹利超編著;6. Java范例大全機(jī)械工業(yè)出版社,尹繼平、張帆 編著;附錄:項目源代碼一、 數(shù)據(jù)庫連接( DbConnection.java )package dao;import java.sql.Connection;import java.sql.DriverM

15、anager;import java.sql.SQLException;public class DbConnection public static Connection getConnection() Connection con = null;String url = jdbc:mysql:/localhost:3306/java;String userName= root;String password = l057788y;try Class.forName(com.mysql.jdbc.Driver);con = DriverManager.getConnection(url,us

16、erName,password); System.out.println( 數(shù)據(jù)庫連接成功 ); catch (ClassNotFoundException e) / TODO Auto-generated catch block e.printStackTrace();return null; catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); return con;public static void closeConnection(Connection con) if(con!=nul

17、l)try con.close(); con = null; catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();public static void main(String args) getConnection();二、 學(xué)生信息數(shù)據(jù)庫管理( Student_Dao.java )package dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import j

18、ava.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import model.Depart;import model.Student;public class StudentDao public boolean addInfo(Student student)boolean flag;Connection con = DbConnection.getConnection();PreparedStatement ps;String sql = ;/ResultSet rs;try sql = inse

19、rt into student values(?,?,?,?,?,?); 用/ 問號代替ps = con.prepareStatement(sql); ps.setInt(1, student.getId(); ps.setString(2, student.getName(); ps.setString(3, student.getSex(); ps.setString(4, student.getBorn_date(); ps.setString(5, student.getDepart_id(); ps.setString(6, student.getClass_name(); ps.e

20、xecute();System.out.println(”添加了一條記錄); flag = true; catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();flag = false;finallyDbConnection.closeConnection(con);return flag;public ArrayList findAll()ArrayList students = new ArrayList(); Connection con = DbConnection.getConnectio

21、n();Statement sta;ResultSet rs;try sta = con.createStatement();rs = sta.executeQuery(SELECT * FROM student); /從表 depart 中查詢所有數(shù)據(jù)while(rs.next()Student student = new Student(); student.setId(rs.getInt(1); student.setName(rs.getString(2); student.setSex(rs.getString(3); student.setBorn_date(rs.getStrin

22、g(4); student.setDepart_id(rs.getString(5); student.setClass_name(rs.getString(6);System.out.println(student.getName();students.add(student);rs.close();sta.close(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();finallyDbConnection.closeConnection(con);return students;pu

23、blic Student findOne(int id) Student student = new Student();Connection con = DbConnection.getConnection();PreparedStatement ps;String sql = ;ResultSet rs;try sql = SELECT * FROM student where id=?;ps = con.prepareStatement(sql);ps.setInt(1, id);rs = ps.executeQuery();/從表 depart 中查詢所有數(shù)據(jù)if(rs.next()s

24、tudent.setId(rs.getInt(id); / 注意數(shù)據(jù)類型要對應(yīng) student.setName(rs.getString(Name); student.setSex(rs.getString(Sex); student.setBorn_date(rs.getString(birthday); student.setDepart_id(rs.getString(Depart); student.setClass_name(rs.getString(Class); System.out.println(id:+student.getId()+ name:+student.getNa

25、me();elseSystem.out.println(”沒有數(shù)據(jù));rs.close();ps.close(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();finallyDbConnection.closeConnection(con);return student;public boolean deleteInfo(Student student)boolean flag;Connection con = DbConnection.getConnection();PreparedS

26、tatement ps;String sql = ;try sql = delete from student where id=?; / 用問號代替ps = con.prepareStatement(sql);ps.setInt(1, student.getId();ps.execute();System.out.println(成功刪除了一條記錄); flag = true; catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace();flag = false;finallyDbConnectio

27、n.closeConnection(con);return flag;三、 歡迎界面( Welcome.java )package menu;import java.awt.BorderLayout;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.s

28、wing.*;public class Welcome JFrame w = new JFrame(managementsystem);JPanel p1 = new JPanel();JPanel p2 = new JPanel();JLabel l = new JLabel(歡迎進(jìn)入學(xué)生信息管理系統(tǒng)! );JButton b = new JButton(確定 );Welcome() w.addWindowListener(new Wind();b.addMouseListener(new Monitor2();Font font = new Font( 歡迎進(jìn)入學(xué)生信息管理系統(tǒng)! , Fo

29、nt.PLAIN, 40); l.setFont(font);w.add(p1,BorderLayout.CENTER); w.add(p2,BorderLayout.SOUTH);p1.add(l); l.setBounds(p1.WIDTH/2-100,p1.HEIGHT/2-10,200,20);p2.add(b); b.setBounds(p2.WIDTH/2-10,p2.HEIGHT/2-6,20,12);w.setBounds(400, 200, 600, 200);w.setVisible(true);private class Monitor2 extends MouseAda

30、pterpublic void mousePressed(MouseEvent e) new Menu();w.setVisible(false);public static void main(String args)new Welcome();private class Wind extends WindowAdapter public void windowClosing(WindowEvent e) w.setVisible(false); System.exit(0);四、 主菜單界面 ( Menu.java )package menu;import java.awt.*;impor

31、t java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.*;public class Menu JFrame f = new JFrame(菜單 );JPanel p = new JPanel();Menu()JButton b_depart = new JButton(院系信息 );JButton b_student = new JButto

32、n(學(xué)生信息 );JButton b_course = new JButton(課程信息 );JButton b_score = new JButton(成績信息 );JButton ex = new JButton(退出 );b_score.addActionListener(new Monitor2(); ex.addActionListener(new Monitor2(); b_depart.addActionListener(new Monitor2(); b_student.addActionListener(new Monitor2(); b_course.addActionLi

33、stener(new Monitor2();f.addWindowListener(new Wind();f.add(p);p.setLayout(new GridLayout(1,2);JLabel l = new JLabel();JPanel p2 = new JPanel();p.add(l);p.add(p2);p2.setLayout(new GridLayout(5,1);p2.add(b_depart);p2.add(b_student);p2.add(b_course);p2.add(b_score);p2.add(ex);f.setBounds(400,200,400,40

34、0);f.setVisible(true);public static void main(String args)new Menu();private class Wind extends WindowAdapter public void windowClosing(WindowEvent e) f.setVisible(false);System.exit(0);private class Monitor2 implements ActionListener退出 )public void actionPerformed(ActionEvent e) if(e.getActionComma

35、nd().equals(new Menu();System.exit(0);if(e.getActionCommand().equals( 學(xué)生信息 )new Son_menu().studentmenu();f.setVisible(false);i f(e.getActionCommand().equals( 院系信息 )new Son_menu().departmenu();f.setVisible(false);i f(e.getActionCommand().equals( 課程信息 )new Son_menu().coursemenu();f.setVisible(false);i

36、 f(e.getActionCommand().equals( 成績信息 )new Son_menu().scoremenu();f.setVisible(false);五、 子菜單界面( Son_Menu.java )package menu;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.ArrayList;import java.util.Vector

37、;import javax.swing.*;import javax.swing.table.DefaultTableModel;import model.Student;import dao.StudentDao; public class Son_menu JFrame f ;JPanel p1 = new JPanel();錄入 );刪除 );修改 ); 查找 );返回 );JPanel p2 = new JPanel();JButton b_add = new JButton(JButton b_delet = new JButton(JButton b_change = new JB

38、utton(JButton b_find = new JButton( JButton b_return = new JButton(JTable t; DefaultTableModel tableModel= null; public static void main(String args) new Son_menu().studentmenu();/ 學(xué)生信息菜單public void studentmenu()f = new JFrame( 學(xué)生信息 ); ArrayList scan = new ArrayList();Vector columnNames = new Vector

39、(); columnNames.add(學(xué)號 );columnNames.add(姓名 );columnNames.add(性別 );columnNames.add(出生年月)columnNames.add(學(xué)院代碼)columnNames.add(所在班級) tableModel = new DefaultTableModel(columnNames,0); tableModel.addRow(columnNames);StudentDao ddao = new StudentDao();scan = ddao.findAll();for(int i=0;iscan.size();i+)Ve

40、ctor v = new Vector();Student student = (Student)scan.get(i); v.add(student.getId(); v.add(student.getName(); v.add(student.getSex(); v.add(student.getBorn_date(); v.add(student.getDepart_id(); v.add(student.getClass_name(); tableModel.addRow(v);t = new JTable(tableModel);t.setVisible(true);f.setLay

41、out(new BorderLayout(); f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.SOUTH); f.setBounds(400,200,600,400);p1.add(t); b_add.setActionCommand( 學(xué)生錄入 ); b_delet.setActionCommand( 學(xué)生刪除 ); b_change.setActionCommand( 學(xué)生修改 ); b_find.setActionCommand( 學(xué)生查找 ); b_add.addActionListener(new Monitor2(); b_

42、delet.addActionListener(new Monitor2(); b_change.addActionListener(new Monitor2(); b_find.addActionListener(new Monitor2(); b_return.addActionListener(new Monitor2(); p2.add(b_add);p2.add(b_delet); p2.add(b_change);p2.add(b_find); p2.add(b_return); f.setVisible(true);/ 院系信息菜單public void departmenu()

43、f = new JFrame(院系信息 ); t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout(); f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.SOUTH); f.setBounds(400,200,400,400);p1.add(t); b_add.setActionCommand( 院系錄入 ); b_delet.setActionCommand( 院系刪除 ); b_change.setActionCommand( 院系修改 ); b_f

44、ind.setActionCommand( 院系查找 ); b_add.addActionListener(new Monitor2(); b_delet.addActionListener(new Monitor2(); b_change.addActionListener(new Monitor2(); b_find.addActionListener(new Monitor2(); b_return.addActionListener(new Monitor2(); p2.add(b_add);p2.add(b_delet); p2.add(b_change);p2.add(b_find

45、); p2.add(b_return); f.setVisible(true);/ 課程信息菜單public void coursemenu()f = new JFrame(課程信息 );t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout();f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.SOUTH); f.setBounds(400,200,400,400);p1.add(t); b_add.setActionCommand( 課程錄入 ); b_

46、delet.setActionCommand( 課程刪除 ); b_change.setActionCommand( 課程修改 ); b_find.setActionCommand( 課程查找 ); b_add.addActionListener(new Monitor2(); b_delet.addActionListener(new Monitor2(); b_change.addActionListener(new Monitor2(); b_find.addActionListener(new Monitor2(); b_return.addActionListener(new Mon

47、itor2(); p2.add(b_add);p2.add(b_delet); p2.add(b_change);p2.add(b_find); p2.add(b_return); f.setVisible(true);/ 成績信息菜單public void scoremenu()f = new JFrame(成績信息 );t = new JTable(100,2);t.setVisible(true);f.setLayout(new BorderLayout();f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.SOUTH); f.set

48、Bounds(400,200,400,400);p1.add(t);b_add.setActionCommand( 成績錄入 ); b_delet.setActionCommand( 成績刪除 ); b_change.setActionCommand( 成績修改 ); b_find.setActionCommand( 成績查找 ); b_add.addActionListener(new Monitor2(); b_delet.addActionListener(new Monitor2(); b_change.addActionListener(new Monitor2(); b_find.

49、addActionListener(new Monitor2(); b_return.addActionListener(new Monitor2();p2.add(b_add); p2.add(b_delet); p2.add(b_change);p2.add(b_find); p2.add(b_return); f.setVisible(true);private class Monitor2 implements ActionListener public void actionPerformed(ActionEvent e) if(e.getActionCommand().equals

50、( 返回 ) f.setVisible(false); new Menu();if(e.getActionCommand().equals( 學(xué)生錄入 ) f.setVisible(false);new Add_Menu().student_add();if(e.getActionCommand().equals( 學(xué)生刪除 )f.setVisible(false);new Delet_Menu().student_delet();if(e.getActionCommand().equals( 學(xué)生修改 )f.setVisible(false);new Change_Menu().studen

51、t_change();if(e.getActionCommand().equals( 學(xué)生查找 )f.setVisible(false);new Find_Menu().student_find();六、 添加功能( Add_Menu.java )package menu;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import model.St

52、udent;import dao.StudentDao;public class Add_Menu JFrame add_menu;JPanel p1,p2,p11,p12,p13,p14,p15,p16;JLabel l1,l2,l3,l4,l5,l6;JTextField t1,t2,t3,t4,t5,t6;JButton b_ok,b_cancel;public void student_add()add_menu = new JFrame( 錄入學(xué)生信息 ); p1 = new JPanel();p2 = new JPanel();p11 = new JPanel();p12 = new JPanel();p13 = new JPanel();p14 = new JPanel();p15 = new JPanel();p16 = new JPanel();p1.setLayout(new GridLayout(6,1);l1 = new JLabel( l2 = new JLabel( l3 = new JLabel(l4 = new JLabel( l5 = new JLabel(l6 = new JLabel(學(xué)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論