版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.學(xué)生信息管理系統(tǒng)設(shè)計(jì)系統(tǒng)簡(jiǎn)介本系統(tǒng)提供了學(xué)生信息管理中常見的基本功能,主要包括管理員和學(xué)生兩大模塊。管理員的主要功能有對(duì)學(xué)生信息和課程信息進(jìn)行增加、刪除、修改、查找等操作,對(duì)選課信息進(jìn)行管理,對(duì)成績(jī)信息和用戶信息進(jìn)行修改、查找等操作。學(xué)生的主要功能有對(duì)學(xué)生信息和成績(jī)信息進(jìn)行查看,對(duì)個(gè)人的密碼信息進(jìn)行修改等。功能設(shè)計(jì)2.1 需求分析本系統(tǒng)需要實(shí)現(xiàn)的功能:1、管理員對(duì)學(xué)生信息和課程信息進(jìn)行增加、刪除、修改、查找等操作,對(duì)選課信息進(jìn)行管理,對(duì)成績(jī)信息和用戶信息進(jìn)行修改、查找等操作。2、學(xué)生對(duì)學(xué)生信息和成績(jī)信息進(jìn)行查看,對(duì)個(gè)人的密碼信息進(jìn)行修改等。2.2總體設(shè)計(jì)學(xué)生信息管理系統(tǒng)主要包括管理員和學(xué)生兩
2、大模塊。管理員模塊包括:學(xué)生信息管理、課程信息管理、選課信息管理、成績(jī)信息管理、用戶信息管理等。用戶模塊包括:學(xué)生信息查看、成績(jī)信息查看、個(gè)人信息管理等。系統(tǒng)總體結(jié)構(gòu)如圖所示。總體結(jié)構(gòu)圖2.3模塊詳細(xì)設(shè)計(jì)1、學(xué)生信息管理模塊學(xué)生信息管理模塊包括增加、刪除、修改、查詢、顯示全部等。具體的結(jié)構(gòu)圖如圖所示。學(xué)生信息管理模塊結(jié)構(gòu)圖2、課程信息管理模塊課程信息管理模塊包括增加、刪除、修改、查詢、顯示全部等。具體的結(jié)構(gòu)圖如圖所示。課程信息管理模塊結(jié)構(gòu)圖3、選課信息管理模塊選課信息管理模塊包括查詢、顯示全部等。具體的結(jié)構(gòu)圖如圖所示。選課信息管理模塊結(jié)構(gòu)圖4、成績(jī)信息管理模塊成績(jī)信息管理模塊包括修改成績(jī)、查詢
3、、顯示全部等。具體的結(jié)構(gòu)圖如圖所示。成績(jī)信息管理模塊結(jié)構(gòu)圖5、用戶信息管理模塊用戶信息管理模塊包括修改、查詢、顯示全部等。具體的結(jié)構(gòu)圖如圖所示。用戶信息管理模塊結(jié)構(gòu)圖數(shù)據(jù)庫設(shè)計(jì)在數(shù)據(jù)庫student中共有4張數(shù)據(jù)表:s學(xué)生信息表、c課程信息表、sc選課信息表、unpw用戶信息表,下面定義每張表的字段名稱和數(shù)據(jù)類型。s學(xué)生信息表字段名稱數(shù)據(jù)類型描述snochar 學(xué)號(hào),關(guān)鍵字snchar 姓名saint年齡sschar 性別sdchar 院系c課程信息表字段名稱數(shù)據(jù)類型描述cnochar 課程號(hào),關(guān)鍵字cnchar 課程名pcnochar 先行課程號(hào)sc選課信息表字段名稱數(shù)據(jù)類型描述snocha
4、r 學(xué)號(hào),關(guān)鍵字cnochar 課程號(hào),關(guān)鍵字gint成績(jī)unpw用戶信息表字段名稱數(shù)據(jù)類型描述unchar 用戶名,關(guān)鍵字pwchar 密碼qxint角色界面庫設(shè)計(jì)1、學(xué)生信息管理系統(tǒng)的登錄學(xué)生信息管理系統(tǒng)可由管理員和學(xué)生兩種身份的人使用。管理員和學(xué)生身份登錄所能操作的功能有很大的區(qū)別。系統(tǒng)初始化一個(gè)系統(tǒng)管理員,登錄名:admin 密碼:admin 學(xué)生登錄系統(tǒng)的登錄名為學(xué)號(hào),密碼也為學(xué)號(hào)如:10001,登錄后可以修改密碼。登錄界面管理員登錄系統(tǒng)后的界面學(xué)生登錄系統(tǒng)后的界面2、實(shí)現(xiàn)管理員和學(xué)生操作功能的界面管理員的登錄系統(tǒng)后可以進(jìn)行學(xué)生信息管理、課程信息管理、選課信息管理、成績(jī)信息管理、用戶
5、信息管理等功能操作,其具體界面設(shè)計(jì)如下圖所示。學(xué)生信息管理功能的界面課程信息管理功能的界面選課信息管理功能的界面成績(jī)信息管理功能的界面用戶信息管理功能的界面學(xué)生的登錄系統(tǒng)后可以進(jìn)行學(xué)生信息查看、成績(jī)信息查看、個(gè)人信息管理等功能操作,其具體界面設(shè)計(jì)如下圖所示。學(xué)生信息查看功能的界面成績(jī)信息查看功能的界面?zhèn)€人信息管理功能的界面程序類的設(shè)計(jì)SimpleStudentManager主函數(shù)類DLFrame登陸界面類ManagerFrane管理員界面類StudentFrame學(xué)生界面類 SM學(xué)生信息管理的類 SAdd用于學(xué)生信息管理中增加或修改某條記錄的界面的類SSelect 用于學(xué)生基本信息管理中查詢時(shí)
6、輸入學(xué)號(hào)的界面的類 CM 課程信息管理的類CAdd 用于課程信息管理中增加或修改某條記錄的界面的類CSelect 用于課程信息管理中查詢時(shí)輸入課程號(hào)的界面的類SCM 選課信息管理的類 SCSelect 用于選課信息管理中查詢時(shí)輸入學(xué)號(hào)的界面的類 GM 成績(jī)信息管理的類 GAdd 用于成績(jī)信息管理中修改成績(jī)的界面的類GSelect 用于成績(jī)信息管理中查詢時(shí)輸入學(xué)號(hào)的界面的類 PM 用戶信息管理的類UAdd 用于用戶信息管理中修改密碼的界面的類PSelect 用于用戶信息管理中查詢時(shí)輸入用戶名的界面的類 StudentS 用于學(xué)生信息查看時(shí)輸入學(xué)號(hào)的界面的類 StudentSelect 用于成績(jī)信
7、息查看時(shí)輸入學(xué)號(hào)的界面的類 PPM 個(gè)人信息管理的類PPSelect 用于個(gè)人信息管理查詢時(shí)輸入用戶名的界面的類 程序類的具體代碼實(shí)現(xiàn)見工程文件夾中的代碼及注釋系統(tǒng)的使用說明及環(huán)境配置學(xué)生信息管理系統(tǒng)提供了管理員和學(xué)生這兩個(gè)角色登錄系統(tǒng),管理員通過用戶名:admin 密碼:admin 登錄系統(tǒng)后可以進(jìn)行相應(yīng)的操作。學(xué)生通過以自己的學(xué)號(hào)如10001作為用戶名和密碼登錄系統(tǒng)后進(jìn)行相應(yīng)的學(xué)生權(quán)限范圍內(nèi)的操作。數(shù)據(jù)庫:SQL Server 2005連接數(shù)據(jù)庫的登錄名:sa 密碼:123代碼:import javax.swing.*;import java.awt.*;import java.awt.e
8、vent.*;import java.sql.*;class CAdd extends JFrame implements ActionListener/ 用于課程信息管理中增加或修改某條記錄的界面JLabel lcno = new JLabel;JLabel lcname = new JLabel;JLabel lpcno = new JLabel;JTextField tcno = new JTextField;JTextField tcname = new JTextField;JTextField tpcno = new JTextField;JButton btnOK = new J
9、Button;JButton btnCancel = new JButton;JPanel p = new JPanel;Connection con = null;Statement stmt = null;ResultSet rs = null;boolean isNewsm = true;/ 用于判斷是否顯示課程信息管理的界面public CAdd / 構(gòu)造方法this.setTitle;this.setBounds;p.setLayoutnew FlowLayout;p.add;p.add;p.add;p.add;p.add;p.add;p.add;p.add;this.add;thi
10、s.setResizable;this.setDefaultCloseOperation;btnOK.addActionListener;btnCancel.addActionListener;this.show;public void connDB / 連接數(shù)據(jù)庫try bc.SQLServerDriver; catch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public void closeDB / 關(guān)閉連接try
11、 stmt.close;con.close; catch e.printStackTrace;public void insertst / 插入記錄String kch = null;String kcm = null; String xxkch=null;kch = tcno.getText;kcm = tcname.getText;xxkch=tpcno.getText;if this.getTitle = 修改 / 如果是修改記錄,先刪除再增加try this.connDB;int rs1 = stmt.executeUpdate; catch e.printStackTrace;Str
12、ing str = insert into c values;this.connDB;/ 連接數(shù)據(jù)庫try stmt.executeUpdate;JOptionPane.showMessageDialognull, this.getTitle + 成功!,提示, JOptionPane.INFORMATION_MESSAGE, new ImageIcon;this.setVisible;catch JOptionPane.showMessageDialog;tcno.setText;public void actionPerformed if e.getActionCommand = 確定 t
13、his.insertst;if new CM.display;isNewsm = true;if e.getActionCommand = 取消 this.setVisible;new CM.display;import java.awt.Component;import java.awt.FlowLayout;import java.awt.event.*;import java.sql.*;import java.util.*;import javax.swing.*;import javax.swing.table.TableCellRenderer;class CM extends J
14、Frame implements ActionListener / 課程信息管理JPanel p = new JPanel;JButton btnAdd = new JButton;JButton btnDelete = new JButton;JButton btnAlter = new JButton;JButton btnSearch = new JButton;JButton btnDisplay = new JButton;JMenuBar mb = new JMenuBar;JPanel p1 = new JPanel;JTable sTable;JScrollPane scrol
15、l;Connection con = null;Statement stmt = null;ResultSet rs = null;Object playerInfo;CSelect cst;String mkch = null;boolean bstd = false;CM / 構(gòu)造方法super;add;this.add;mb.add;mb.add;mb.add;mb.add;mb.add;this.connDB;/ 連接數(shù)據(jù)庫this.setBounds;btnAdd.addActionListener;btnDelete.addActionListener;btnAlter.addAc
16、tionListener;btnSearch.addActionListener;btnDisplay.addActionListener;this.setJMenuBar;/ this.setDefaultCloseOperation;this.setResizable;show;CM / 構(gòu)造方法super;this.cst = cst;bstd = true;add;this.add;mb.add;mb.add;mb.add;mb.add;mb.add;this.connDB;this.setBounds;btnAdd.addActionListener;btnDelete.addAct
17、ionListener;btnAlter.addActionListener;btnSearch.addActionListener;btnDisplay.addActionListener;this.setJMenuBar;/ this.setDefaultCloseOperation;this.setResizable;show;public void display / 顯示所有的課程信息int i = 0;int j = 0;int k = 0;List al = new ArrayList;try rs = stmt.executeQuery;while rs.next / 找出表中
18、的記錄數(shù)賦給ial.addrs.getString;al.addrs.getString;al.addrs.getString;i+; catch e.printStackTrace;playerInfo = new Objecti3;String columnNames = 課程號(hào), 課程名, 先行課程號(hào) ;try rs = stmt.executeQuery;while rs.next playerInfoj0 = rs.getString;playerInfoj1 = rs.getString;playerInfoj2 = rs.getString;j+; catch e.printSt
19、ackTrace;sTable = new JTable;/ 創(chuàng)建網(wǎng)格p1.add;scroll = new JScrollPane;this.add;public void connDB / 連接數(shù)據(jù)庫try Class.forName; catch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public void closeDB / 關(guān)閉連接try stmt.close;con.close; catch e.print
20、StackTrace;public void delete / 刪除某個(gè)課程信息String kch = null;String kcm = null;String xxkch = null;int row = -1;row = sTable.getSelectedRow;if / 判斷要?jiǎng)h除的信息是否被選中JOptionPane.showMessageDialog; else if / 判斷選擇的是不是查詢后的結(jié)果int j1 = 0;try rs = stmt.executeQuery;while rs.next & j1 / 找出當(dāng)前被選中的記錄在數(shù)據(jù)庫中的對(duì)應(yīng)kch = rs.getS
21、tring;kcm = rs.getString;xxkch = rs.getString;j1+; catch e.printStackTrace;int i1 = 0;try int rs1 = stmt.executeUpdate;/ 刪除數(shù)據(jù)庫中當(dāng)前被選中的記錄JOptionPane.showMessageDialog;this.dispose;new CM.display; catch e.printStackTrace; else try int rs1 = stmt.executeUpdate;/ 刪除數(shù)據(jù)庫中當(dāng)前被選中的記錄JOptionPane.showMessageDial
22、og;this.dispose;new CM.display; catch e.printStackTrace;public void update / 修改某個(gè)課程記錄String kch = null;String kcm = null;String xxkch = null;int row = -1;row = sTable.getSelectedRow;if JOptionPane.showMessageDialog; else int j1 = 0;try if / 判斷選擇的是不是查詢后的結(jié)果rs = stmt.executeQuery; else rs = stmt.execut
23、eQuery;while rs.next & j1 / 找出當(dāng)前被選中的記錄在數(shù)據(jù)庫中的對(duì)應(yīng)kch = rs.getString;kcm = rs.getString;xxkch = rs.getString;j1+; catch e.printStackTrace;CAdd cadd = new CAdd;cadd.setTitle;t;cadd.tcname.setText;cadd.tpcno.setText;cadd.tcno.setEnabled;this.dispose;public void select / 顯示某個(gè)查詢的結(jié)果mkch = cst.kch;playerInfo
24、= new Object13;String columnNames = 課程號(hào), 課程名, 先行課程號(hào) ;try rs = stmt.executeQuery;while rs.next playerInfo00 = rs.getString;playerInfo01 = rs.getString;playerInfo02 = rs.getString; catch e.printStackTrace;if this.dispose;JOptionPane.showMessageDialog;new CM.display; else sTable = new JTable;/ 創(chuàng)建網(wǎng)格p1.a
25、dd;scroll = new JScrollPane;this.add;public void actionPerformed if e.getActionCommand = 增加 new CAdd;this.dispose;if e.getActionCommand = 刪除 this.delete;if e.getActionCommand = 修改 this.update;if e.getActionCommand = 查詢 cst = new CSelect;this.dispose;if e.getActionCommand = 顯示 this.dispose;new CM.dis
26、play;import java.awt.event.*;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.*;public class CSelect extends JFrame implements ActionListener / 用于課程信息管理中查詢時(shí)輸入課程號(hào)的界面JLabel ltitle = new JLabel;J
27、TextField tcno = new JTextField;JButton btnOK = new JButton;JPanel p = new JPanel;String kch = null;public CSelect / 構(gòu)造方法p.add;p.add;p.add;add;this.setBounds;btnOK.addActionListener;this.setResizable;this.show;public void actionPerformed kch = tcno.getText;/ 取得當(dāng)前輸入課程號(hào)的值if kch.equals / 判斷是否輸入了課程號(hào)JOpt
28、ionPane.showMessageDialog; else this.dispose;new CM.select;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;class DLFrame extends JFrame implements ActionListener, ItemListener / 登錄界面JPanel p1 = null;JPanel p2 = null;JPanel p3 = null;JLabel userName = new JLabel;JText
29、Field txtUser = new JTextField;JLabel password = new JLabel;JPasswordField txtPwd = new JPasswordField;JLabel role = new JLabel;JComboBox cbrole = new JComboBox;JButton btnLogin = new JButton;JButton btncz = new JButton;JButton btnCancel = new JButton;JLabel imageLabel;Icon image;static int OK = 1;s
30、tatic int CANCEL = 0;int actionCode = 0;Connection con = null;Statement stmt = null;ResultSet rs = null;int qxian = 0;public DLFrame / 構(gòu)造方法super;p1 = new JPanel;p2 = new JPanel;p3 = new JPanel;cbrole.addItem;cbrole.addItem;image = new ImageIcon;imageLabel = new JLabel;p1.add;this.setLayoutnew FlowLa
31、yout;this.setBounds;p2.setLayoutnew GridLayout;p2.add;p2.add;p2.add;p2.add;p2.add;p2.add;p3.add;p3.add;p3.add;this.add;this.add;this.add;this.setResizable;this.setDefaultCloseOperation;this.show;btnLogin.addActionListener;cbrole.addItemListener;btncz.addActionListener;btnCancel.addActionListener;pub
32、lic void connDB / 連接數(shù)據(jù)庫try Class.forName; catch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public void closeDB / 關(guān)閉連接try stmt.close;con.close; catch e.printStackTrace;public void itemStateChanged if e.getStateChange = ItemEvent.SELECTE
33、D JComboBox jcb = e.getSource;qxian = jcb.getSelectedIndex;public void actionPerformed Object source = e.getSource;String un = null;String pw = null;boolean success = false;/ 用于判斷是否登錄成功if if txtUser.getText.equals | txtPwd.getText.equals / 判斷是否輸入了用戶名和密碼JOptionPane.showMessageDialog; else this.connDB
34、;try rs = stmt.executeQuery;while rs.next un = rs.getString.trim;pw = rs.getString.trim;if txtUser.getText.equals if txtPwd.getText.equals actionCode = OK;this.setVisible;if new ManagerFrane;/ 進(jìn)入管理員界面if new StudentFrame;/ 進(jìn)入學(xué)生界面success = true;break; else JOptionPane.showMessageDialog;txtPwd.setText;
35、success = true;if JOptionPane.showMessageDialog;txtUser.setText;txtPwd.setText; catch e1.printStackTrace; else if txtUser.setText;txtPwd.setText; else if System.exit;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;class GAdd extends JFrame implements ActionListener /
36、 用于成績(jī)信息管理中修改成績(jī)的界面JLabel lcno = new JLabel;JLabel lcname = new JLabel;JLabel lg = new JLabel;JTextField tcno = new JTextField;JTextField tcname = new JTextField;JTextField tpcno = new JTextField;JButton btnOK = new JButton;JButton btnCancel = new JButton;JPanel p = new JPanel;Connection con = null;St
37、atement stmt = null;ResultSet rs = null;boolean isNewsm = true;/ 用于判斷是否顯示成績(jī)信息管理的界面public GAdd / 構(gòu)造方法this.setTitle;this.setBounds;p.setLayoutnew FlowLayout;p.add;p.add;p.add;p.add;p.add;p.add;p.add;p.add;this.add;this.setResizable;this.setDefaultCloseOperation;btnOK.addActionListener;btnCancel.addAct
38、ionListener;this.show;public void connDB / 連接數(shù)據(jù)庫try .jdbc.SQLServerDriver; catch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public void closeDB / 關(guān)閉連接try stmt.close;con.close; catch e.printStackTrace;public void insertst / 修改成績(jī)String k
39、ch = null;String kcm = null;String xxkch = null;kch = tcno.getText;kcm = tcname.getText;xxkch = tpcno.getText;String gcno = null;if this.getTitle = 修改成績(jī) try this.connDB;rs = stmt.executeQuery;while rs.next gcno = rs.getString;/ 找出哪門課程的成績(jī)要被修改System.out.println;stmt.executeUpdate; catch e.printStackTr
40、ace;public void actionPerformed if e.getActionCommand = 確定 this.insertst;if new GM.display;this.dispose;isNewsm = true;if e.getActionCommand = 取消 this.setVisible;new GM.display;import java.awt.Component;import java.awt.FlowLayout;import java.awt.event.*;import java.sql.*;import java.util.*;import ja
41、vax.swing.*;import javax.swing.table.TableCellRenderer;class GM extends JFrame implements ActionListener / 成績(jī)信息管理JPanel p = new JPanel;JButton btnAlter = new JButton;JButton btnSearch = new JButton;JButton btnDisplay = new JButton;JMenuBar mb = new JMenuBar;JPanel p1 = new JPanel;JTable sTable;JScro
42、llPane scroll;Connection con = null;Statement stmt = null;ResultSet rs = null;Object playerInfo;GSelect gst;int ii = 0;String mxh = null;boolean bstd = false;GM / 構(gòu)造方法super;add;this.add;mb.add;mb.add;mb.add;this.connDB;this.setBounds;btnAlter.addActionListener;btnSearch.addActionListener;btnDisplay.
43、addActionListener;this.setJMenuBar;/ this.setDefaultCloseOperation;this.setResizable;show;GM / 構(gòu)造方法super;this.gst = gst;bstd = true;add;this.add;mb.add;mb.add;mb.add;this.connDB;this.setBounds;btnAlter.addActionListener;btnSearch.addActionListener;btnDisplay.addActionListener;this.setJMenuBar;/ this
44、.setDefaultCloseOperation;this.setResizable;show;public void display / 顯示所有的成績(jī)信息int i = 0;int j = 0;int k = 0;List al = new ArrayList;try rs = stmt.executeQuery;while rs.next / 找出表中的記錄數(shù)賦給ial.addrs.getString;al.addrs.getString;al.addrs.getString;i+; catch e.printStackTrace;playerInfo = new Objecti3;S
45、tring columnNames = 學(xué)號(hào), 課程名, 成績(jī) ;try rs = stmt.executeQuery;while rs.next playerInfoj0 = rs.getString;playerInfoj1 = rs.getString;playerInfoj2 = rs.getString;j+; catch e.printStackTrace;sTable = new JTable;/ 創(chuàng)建網(wǎng)格p1.add;scroll = new JScrollPane;this.add;public void connDB / 連接數(shù)據(jù)庫try Class.forName; ca
46、tch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public void closeDB / 關(guān)閉連接try stmt.close;con.close; catch e.printStackTrace;public void update / 修改某個(gè)學(xué)生的成績(jī)信息String kch = null;String kcm = null;String xxkch = null;int row = -1;row = sTabl
47、e.getSelectedRow;if / 判斷要修改的信息是否被選中JOptionPane.showMessageDialog; else int j1 = 0;try if / 判斷選擇的是不是查詢后的結(jié)果rs = stmt.executeQuery; else rs = stmt.executeQuery;while rs.next & j1 kch = rs.getString;kcm = rs.getString;xxkch = rs.getString;j1+; catch e.printStackTrace;GAdd gadd = new GAdd;gadd.setTitle;g
48、add.tcno.setText;gadd.tcname.setText;gadd.tpcno.setText;gadd.tcno.setEnabled;gadd.tcname.setEnabled;this.dispose;public void select / 顯示某個(gè)學(xué)生的成績(jī)查詢結(jié)果int j = 0;ii = gst.i;mxh = gst.gxh;playerInfo = new Objectii3;String columnNames = 學(xué)號(hào), 課程名, 成績(jī) ;try rs = stmt.executeQuery;while rs.next playerInfoj0 = r
49、s.getString;playerInfoj1 = rs.getString;playerInfoj2 = rs.getString;j+; catch e.printStackTrace;if this.dispose;JOptionPane.showMessageDialog;new GM.display; else sTable = new JTable;p1.add;scroll = new JScrollPane;this.add;public void actionPerformed if e.getActionCommand = 修改成績(jī) this.update;if e.ge
50、tActionCommand = 查詢 gst = new GSelect;this.dispose;if e.getActionCommand = 顯示 this.dispose;new GM.display;import java.awt.event.*;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;impor
51、t java.util.List;import javax.swing.*;public class GSelect extends JFrame implements ActionListener / 用于成績(jī)信息管理中查詢時(shí)輸入學(xué)號(hào)的界面JLabel ltitle = new JLabel;JTextField tsno = new JTextField;JButton btnOK = new JButton;JPanel p = new JPanel;Connection con = null;Statement stmt = null;ResultSet rs = null;Strin
52、g gxh = null;int i = 0;public GSelect / 構(gòu)造方法p.add;p.add;p.add;add;this.setBounds;btnOK.addActionListener;this.setResizable;this.show;public void connDB / 連接數(shù)據(jù)庫try Class.forName; catch e.printStackTrace;try con = DriverManager.getConnection;stmt = con.createStatement; catch e.printStackTrace;public v
53、oid closeDB / 關(guān)閉連接try stmt.close;con.close; catch e.printStackTrace;public void ii / 取得符合條件的記錄數(shù)List al = new ArrayList;try rs = stmt.executeQuery;while rs.next al.addrs.getString;al.addrs.getString;al.addrs.getString;i+;/ 把符合條件的記錄數(shù)賦給i catch e.printStackTrace;public void actionPerformed gxh = tsno.ge
54、tText; / 取得當(dāng)前輸入學(xué)號(hào)的值this.connDB;this.ii;if gxh.equals / 判斷是否輸入了學(xué)號(hào)JOptionPane.showMessageDialog; else this.dispose;new GM.select;import java.awt.*;import java.awt.event.*;import javax.swing.*;class ManagerFrane extends JFrame implements ActionListener / 管理員界面JPanel p1 = new JPanel;JPanel p2 = new JPan
55、el;JButton btns = new JButton;JButton btnc = new JButton;JButton btnsc = new JButton;JButton btng = new JButton;JButton btnu = new JButton;JButton btnClose = new JButton;JLabel l = new JLabel;ManagerFrane / 構(gòu)造方法super;setSize;add;add;p1.add;p2.add;p2.add;p2.add;p2.add;p2.add;p2.add;btns.addActionList
56、ener;btnc.addActionListener;btnsc.addActionListener;btng.addActionListener;btnu.addActionListener;btnClose.addActionListener;this.setResizable;this.setDefaultCloseOperation;show;public void actionPerformed if e.getActionCommand = 學(xué)生信息管理new SM.display;if e.getActionCommand = 課程信息管理 new CM.display;if
57、e.getActionCommand = 選課信息管理 new SCM.display;if e.getActionCommand = 成績(jī)信息管理 new GM.display;if e.getActionCommand = 用戶信息管理 new PM.display;if e.getActionCommand = 退出管理系統(tǒng) System.exit;import java.awt.Component;import java.awt.FlowLayout;import java.awt.event.*;import java.sql.*;import java.util.*;import
58、javax.swing.*;import javax.swing.table.TableCellRenderer;class PM extends JFrame implements ActionListener / 用戶信息管理JPanel p = new JPanel;JButton btnAlter = new JButton;JButton btnSearch = new JButton;JButton btnDisplay = new JButton;JMenuBar mb = new JMenuBar;JPanel p1 = new JPanel;JTable sTable;JSc
59、rollPane scroll;Connection con = null;Statement stmt = null;ResultSet rs = null;Object playerInfo;PSelect pst;String myh = null;boolean bstd = false;PM / 構(gòu)造方法super;add;this.add;mb.add;mb.add;mb.add;this.connDB;this.setBounds;btnAlter.addActionListener;btnSearch.addActionListener;btnDisplay.addAction
60、Listener;this.setJMenuBar;/ this.setDefaultCloseOperation;this.setResizable;show;PM / 構(gòu)造方法super;this.pst = pst;bstd = true;add;this.add;mb.add;mb.add;mb.add;this.connDB;this.setBounds;btnAlter.addActionListener;btnSearch.addActionListener;btnDisplay.addActionListener;this.setJMenuBar;/ this.setDefau
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度環(huán)保型離婚協(xié)議書格式與實(shí)施指南2篇
- 二零二五年度城市綠化工程設(shè)計(jì)承包合同3篇
- 二零二五年度個(gè)人電子競(jìng)技賽事參賽協(xié)議4篇
- 稅務(wù)工作新思路探討
- 2025版汽車零部件退貨及換貨服務(wù)協(xié)議書3篇
- 二零二五年度個(gè)人住房公積金貸款合同爭(zhēng)議解決流程合同模板4篇
- 二零二五年度個(gè)人自用房屋全屋定制裝修服務(wù)合同
- 二零二五年度企業(yè)銷售合同發(fā)票管理標(biāo)準(zhǔn)化臺(tái)賬
- 二零二五年度個(gè)人反擔(dān)保債務(wù)清償協(xié)議3篇
- 生產(chǎn)與運(yùn)作管理-第5版 課件全套 陳志祥 第1-14章 生產(chǎn)系統(tǒng)與生產(chǎn)運(yùn)作管理概述 -豐田生產(chǎn)方式與精益生產(chǎn)
- 語言學(xué)概論全套教學(xué)課件
- 大數(shù)據(jù)與人工智能概論
- 《史記》上冊(cè)注音版
- 2018年湖北省武漢市中考數(shù)學(xué)試卷含解析
- 測(cè)繪工程產(chǎn)品價(jià)格表匯編
- 《腎臟的結(jié)構(gòu)和功能》課件
- 裝飾圖案設(shè)計(jì)-裝飾圖案的形式課件
- 護(hù)理學(xué)基礎(chǔ)教案導(dǎo)尿術(shù)catheterization
- ICU護(hù)理工作流程
- 天津市新版就業(yè)、勞動(dòng)合同登記名冊(cè)
- 廣東版高中信息技術(shù)教案(全套)
評(píng)論
0/150
提交評(píng)論