學(xué)生學(xué)籍管理系統(tǒng)(含java源代碼)_第1頁
學(xué)生學(xué)籍管理系統(tǒng)(含java源代碼)_第2頁
學(xué)生學(xué)籍管理系統(tǒng)(含java源代碼)_第3頁
學(xué)生學(xué)籍管理系統(tǒng)(含java源代碼)_第4頁
學(xué)生學(xué)籍管理系統(tǒng)(含java源代碼)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學(xué)生學(xué)籍管理詳細(xì)設(shè)計學(xué)號:姓名:班級:一、設(shè)計題目:學(xué)生學(xué)籍管理二:設(shè)計內(nèi)容:設(shè)計GUI學(xué)生學(xué)籍管理界面,用戶可以加入學(xué)生信息,并對基本信息進行修改,添加,查詢,刪除。三:設(shè)計要求:進行簡單的學(xué)生信息管理。四:總體設(shè)計(1)登陸界面的設(shè)計(2)主窗體的設(shè)計(3)添加學(xué)生信息窗體(4)查詢學(xué)生信息窗體(5)修改學(xué)生信息窗體(6)刪除學(xué)生信息窗體(7)事件響應(yīng)的處理五:具體設(shè)計(1)程序結(jié)構(gòu)的說明:A.入口 程序:student.java;B.登陸界面程序:mainframe.java;C.主窗體程序:interfac.java;D.添加信息窗口程序:tj.java;E.修改信息窗口程序:xg.j

2、ava;F.查詢信息窗口程序:cx.java;G.刪除信息窗口程序:sc.java;H.程序數(shù)據(jù)連接:DatabaseConn.java;(2)程序代碼及分析說明A.程序源代碼(已提交)“進入系統(tǒng)”,然后登陸界面消失;出現(xiàn)要操作的界面(屏幕左上角)。“添加信息”按鈕,將信息加入 xinxi表中?!靶薷男畔ⅰ卑粹o(如果數(shù)據(jù)庫中不存在此學(xué)號,則彈出對話框“無此學(xué)生信息”), 若有則修改。“刪除信息”按鈕,彈出確認(rèn)刪除對話框,即可刪除該生信息?!靶畔⒉樵儭卑粹o,在相應(yīng)的文本區(qū)里顯示查詢的信息。H:源代碼/student.java:程序的入口。初始化界面,使主界面位于屏幕中間,且用戶不能改變大小/功能

3、:完成程序的執(zhí)行順序import java.awt.*;import java.sql.*;/import screenpublic class studentboolean packFrame=false;/JFrame frame=new JFrame();public student()mainframe frame=new mainframe();if(packFrame)frame.pack(); elseframe.validate();DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();Dimension

4、 frameSize=frame.getSize(); if(frameSize.height>screenSize.height) frameSize.height=screenSize.height;if(frameSize.width>screenSize.width)frameSize.width=screenSize.width;frame.setLocation(screenSize.width-frameSize.width)/2,(screenSiz e.height-frameSize.height)/2);frame.setVisible(true);publi

5、c static void main(String口 args)tryUIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName( );catch(Exception e)e.printStackTrace();new student();/數(shù)據(jù)庫連接/package sql.database;import java.sql.*;public class DatabaseConn private static String user=”";private static String password=”"

6、;private Connection conn=null;private Statement stmt=null;private ResultSet rs=null; staticcatch(ClassNotFoundException e)。/創(chuàng)建數(shù)據(jù)庫連接對象public Connection getConnection() tryconn=DriverManager.getConnection("jdbc:odbc:stu",user,password); return conn;catch(SQLException e) return null; public S

7、tatement createStat()tryconn=getConnection();stmt=conn.createStatement();return stmt;catch(SQLException e)return null; public ResultSet getRs(String sql) tryconn=getConnection();/stmt=createStat();rs=stmt.executeQuery(sql);return rs;catch(SQLException e) return null;public void close()tryif(rs!=null

8、)rs.close();if(stmt!=null)stmt.close();if(conn!=null)conn.close();catch(SQLException ex)ex.printStackTrace();/mainframe.javaimport java.awt.*;import javax.swing.*;import java.sql.*;public class mainframe extends JFrame implements ActionListenerstatic mainframe s;static JPanel pan=new JPanel();static

9、 JLabe11abel1 = new 兒abel("用 戶)static JLabe11abel2 = new 兒abel("密 碼)static JTextField textField1 = new JTextField();static JPasswordField password = new JPasswordField();,true);/static JButton button1 = new JButton(" 進入系統(tǒng)");static JRadioButton radioButton1=new JRadioButton("

10、管理員“管理員”初始狀態(tài)被選中static JRadioButton radioButton2=new JRadioButton("學(xué)生");static JRadioButton radioButton3=new JRadioButton("教師");ButtonGroup buttonGroup=new ButtonGroup();public mainframe()JLabel label=new JLabel(new ImageIcon(" 圖片 44.jpg");label.setSize(400,400);pan.add(

11、label);pan.setLayout(null);pan.setSize(400,400);this.setTitle(" 學(xué)籍管理系統(tǒng)");this.setSize(400,400);this.setLayout(null);label1.setBounds(100,25,49,20);textField1.setBounds(155,24,120,20);label2.setBounds(100,62,49,20);password.setBounds(155,61,120,20);button1.setBounds(150,200,101,22);radioBut

12、ton1.setBounds(105,120,80,20);radioButton2.setBounds(180,120,60,20);radioButton3.setBounds(240,120,60,20);buttonl.addActionListener(this); buttonGroup.add(radioButtonl); buttonGroup.add(radioButton2); buttonGroup.add(radioButton3); this.add(radioButtonl); this.add(radioButton2); this.add(radioButton

13、3); this.add(labell); this.add(label2); this.add(textFieldl); this.add(password); this.add(buttonl); this.add(pan);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); public static void main(String口 args) new mainframe。; public void actionPerformed(ActionEvent e) if(radioButt

14、on1.isSelected() 管理員 if(textField1.getText().equals("syc")&&password.getText().equals("123") interfac b=new interfac(); this.dispose(); /JOptionPane.showMessageDialog(null,"登陸成功");elseif("".equals(textField1.getText()|”.equals(password.getText() ) JOpt

15、ionPane.showMessageDialog(null,”用戶名或密碼不能為空)elseJOptionPane.showMessageDialog(null,”用戶名或密碼輸入有誤) if(radioButton2.isSelected()/ 學(xué)生 try catch (ClassNotFoundException ce) JOptionPane.showMessageDialog(s,ce.getMessage(); try Connectioncon=DriverManager.getConnection("jdbc:odbc:stu","sa"

16、;,""); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("select * from password where用戶 名 = '"+textField1.getText()+"'and 密 碼 ='"+password.getText()+"”');if(textField1.getText().equals("")|password.getText().equals(

17、"") JOptionPane.showMessageDialog(this,”用戶名或密碼不可為空!"); else if(rs.next() new interfac(); elseJOptionPane.showMessageDialog(this,”您的輸入有誤");/stmt.close(); catch (SQLException se) JOptionPane.showMessageDialog(s,se.getMessage(); /interface.java import java.awt.*; import javax.swing.

18、*;public class interfac extends JFrame implements ActionListener static JMenuBar jMenuBar = new JMenuBar();/ 菜單條static JMenu jMenuFile = new JMenu("文件");/ 菜單項static JMenu jMenuExit = new JMenu("退出");菜單子項static JMenuItem jMenuItem1 = new JMenuItem("添加信息)/static JMenuItem jMen

19、uItem2 = new JMenuItem("修改信息)static JMenuItem jMenuItem3 = new JMenuItem("信息查詢");static JMenuItem jMenuItem4 = new JMenuItem("刪除信息)請選擇操作項");學(xué)籍管理系統(tǒng)"); 添加信息) 修改信息) 信息查詢");刪除信息)static JLabe11abel3 = new JLabel(" static JLabel label4 = new JLabel(" static JBu

20、tton button2 = new JButton(" static JButton button3 = new JButton(" static JButton button4 = new JButton(" static JButton button5 = new JButton(" public interfac() this.setTitle("學(xué)籍管理系統(tǒng)");this.setLayout(null);this.setSize(400,400);label3.setBounds(158,92,98,33);label3.s

21、etFont(new Font("Dialog",Font.PLAIN,15);label4.setFont(new Font("Dialog",Font.BOLD,20);label4.setBounds(157,37,280,40);button2.setBounds(74,136,97,33);button3.setBounds(226,136,97,33);button4.setBounds(74,185,97,33);button5.setBounds(226,185,97,33);this.add(button2);this.add(butt

22、on3);this.add(button4);this.add(button5);this.add(label3);this.add(label4);setJMenuBar(jMenuBar);jMenuFile.add(jMenuItem1);/ ”文件“菜單項中加入子菜單jMenuFile.add(jMenuItem2);jMenuFile.add(jMenuItem3);jMenuFile.add(jMenuItem4);jMenuBar.add(jMenuFile);/ 將菜單項加入菜單條jMenuBar.add(jMenuExit);button2.addActionListener

23、(this);/本窗 口 向按鈕事件源注冊button3.addActionListener(this);button4.addActionListener(this);button5.addActionListener(this);jMenuItem1.addActionListener(this);本窗 口 菜單子項注冊jMenuItem2.addActionListener(this);jMenuItem3.addActionListener(this);jMenuItem4.addActionListener(this);jMenuExit.addActionListener(this

24、);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);public static void main(String口 args)interfac a=new interfac();public void actionPerformed(ActionEvent e) /按鈕事件的處理if(e.getSource()=jMenuExit)System.exit(0);else if(e.getSource()=jMenuItem1|e.getSource()=button2)trytj a=new t

25、j();catch(Exception ee) else if(e.getSource()=jMenuItem2|e.getSource()=button3)try xg a=new xg();catch(Exception ed)elseif(e.getSource()=jMenuItem3|e.getSource()=button4)trycx a=new cx(); catch(Exception ec) elseif(e.getSource()=jMenuItem4|e.getSource()=button5) try sc a=new sc();catch(Exception es)

26、/tj.java添加界面import javax.swing.*;import java.awt.*;import java.sql.*;public class tj extends JFrame implements ActionListenerstatic tj s;static JLabe11abel1 = new 兒abel("學(xué)號:");static JTextField textField1 = new JTextField("");static 兒abel label2 = new 兒abel("姓名:");stati

27、c JTextField textField2 = new JTextField("");static 兒abel label3 = new 兒abel("性別:");static JTextField textField7=new JTextField("");static 兒abel label4 = new 兒abel("出生日期:");static JTextField textField3 = new JTextField("");static 兒abel label5 = new 兒

28、abel("政治面貌:");static JTextField textField8=new JTextField("");static 兒abel label6 = new 兒abel("籍貫)static JTextField textField4 = new JTextField("");static 兒abel label7 = new 兒abel("系另U:");static JTextField textField9 = new JTextField("");static

29、兒abel label8 = new 兒abel("專業(yè):");static JTextField textField5 = new JTextField("");static JButton button1 = new JButton("增加");public tj()this.setTitle("增加學(xué)生信息)this.setLayout(null);this.setSize(400,400);label1.setBounds(30, 11,51, 33);textField1.setBounds(86, 16, 74,

30、 22);label2.setBounds(162, 11,51,33);textField2.setBounds(192, 16, 44, 22);label3.setBounds(241, 11, 70, 33);textField7.setBounds(275, 15, 50, 25);label4.setBounds(31,53, 55, 33);textField3.setBounds(86, 58, 74, 22);label5.setBounds(241,53, 70, 33);textField8.setBounds(296, 57, 72, 25);label6.setBou

31、nds(163, 53, 26, 33);textField4.setBounds(191,58, 44, 22);label7.setBounds(30, 94, 50, 33);textField9.setBounds(86,94,74,22);label8.setBounds(163, 94, 51,33);textField5.setBounds(190, 99, 178, 22);button1.setBounds(25,241,80,33);buttonl.addActionListener(this);this.add(labell);this.add(label2);this.

32、add(label3);this.add(label4);this.add(label5);this.add(label6);this.add(label7);this.add(label8);this.add(textFieldl);this.add(textField2);this.add(textField3);this.add(textField4);this.add(textField5);this.add(textField7);this.add(textField8);this.add(textField9);this.add(buttonl);this.setDefaultCl

33、oseOperation(JFrame.DISPOSE_ON_CLOSE);this.setVisible(true);public static void main(String口 args) throws Exceptiontj a= new tj();a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);一 一public void actionPerformed(ActionEvent e)事件處理程序if (e.getSource() = button1)trycatch (ClassNotFoundException ce)JOption

34、Pane.showMessageDialog(s,ce.getMessage();tryConnectionconDriverManager.getConnection("jdbc:odbc:stu","sa"," ");Statement stmt = con.createStatement();ResultSet rs=stmt.executeQuery("select * from xinxi where 學(xué)號 ='"+textField1.getText ()+皿);if(rs.next()JOpt

35、ionPane.showMessageDialog(null,"此學(xué)號已經(jīng)被注冊"); else stmt.execute("insert into xinxi (學(xué)號,姓名,性別,出生日期, 政治面貌,籍貫,系別,專業(yè))values ('"+textField1.getText()+”',”'+textField2.getText()+"'J'+textField7.getText()+"?"+textField3.getText()+"?"+textField8

36、.getText() +"'J'+textField4.getText()+"?"+textField9.getText()+”':"+textField5.getText()+"')");JOptionPane.showMessageDialog(null,"添加信息成功");catch (SQLException se) JOptionPane.showMessageDialog(s,se.getMessage(); /xg.java修改界面import javax.swing.

37、*; import java.awt.*; import java.sql.*;public class xg extends JFrame implements ActionListener static xg s;static JLabe11abel1 = new 兒abel("學(xué)號:");static JTextField textField1 = new JTextField("");static 兒abel label2 = new 兒abel("姓名:");static JTextField textField2 = ne

38、w JTextField("");static 兒abel label3 = new 兒abel("性別:");static JTextField textField7=new JTextField("");static 兒abel label4 = new 兒abel("出生日期:");static JTextField textField3 = new JTextField("");static 兒abel label5 = new 兒abel("政治面貌:");stat

39、ic JTextField textField8=new JTextField("");static 兒abel label6 = new 兒abel("籍貫)static JTextField textField4 = new JTextField("");static 兒abel label7 = new 兒abel("系另U:");static JTextField textField9 = new JTextField("");static 兒abel label8 = new 兒abel(&qu

40、ot;專業(yè):");static JTextField textField5 = new JTextField("");static JButton button2=new JButton(" 修改"); public xg()this.setTitle("修改學(xué)生信息)this.setLayout(null);this.setSize(400,400);label1.setBounds(30, 11,51, 33);textField1.setBounds(86, 16, 74, 22);label2.setBounds(162, 1

41、1,51,33);textField2.setBounds(192, 16, 44, 22);label3.setBounds(241, 11, 70, 33);textField7.setBounds(275, 15, 50, 25);label4.setBounds(31,53, 55, 33);textField3.setBounds(86, 58, 74, 22);label5.setBounds(241,53, 70, 33);textField8.setBounds(296, 57, 72, 25);label6.setBounds(163, 53, 26, 33);textFie

42、ld4.setBounds(191,58, 44, 22);label7.setBounds(30, 94, 50, 33);textField9.setBounds(86,94,74,22);label8.setBounds(163, 94, 51,33);textField5.setBounds(190, 99, 178, 22);button2.setBounds(115,241,80,33);button2.addActionListener(this);this.add(label1);this.add(label2);this.add(label3);this.add(label4

43、);this.add(label5);this.add(label6);this.add(label7);this.add(label8);this.add(textField1);this.add(textField2);this.add(textField3);this.add(textField4);this.add(textField5);this.add(textField7);this.add(textField8);this.add(textField9);this.add(button2);this.setDefaultCloseOperation(JFrame.DISPOSE

44、_ON_CLOSE); this.setVisible(true);public static void main(String口 args) throws Exceptionxg a=new xg();a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);事件處理程序一 一public void actionPerformed(ActionEvent e)if(e.getSource()=button2)trycatch (ClassNotFoundException ce)JOptionPane.showMessageDialog(s,ce.ge

45、tMessage(); try Connection con = DriverManager.getConnection ("jdbc:odbc:stu","sa","");xinxi where 學(xué)號學(xué)號不可為空!Statement stmt = con.createStatement();ResultSet rs=stmt.executeQuery("select * from='"+textField1.getText()+皿);if(textField1.getText().trim().equal

46、s("")JOptionPane.showMessageDialog(this,”");else if(rs.next() String ='"+textField1.getText()+"', ='"+updateSql="update姓名xinxiset 學(xué)號textField2.getText()+”',性 別二"'+textField7.getText()+”',出生日期二"'+textField3.getText()+"'

47、,政治面貌='"+textField8.getText()+"',籍貫="'+textField4.getText()+"',系 別='"+textField9.getText()+"', 專業(yè)='"+textField5.getText()+ "”'trystmt.executeQuery(updateSql); catch(SQLException se) JOptionPane.showMessageDialog(null,”修改成功)catch

48、(SQLException se)JOptionPane.showMessageDialog(s,se.getMessage();/sc.java 刪除界面import javax.swing.*;import java.awt.*;import java.sql.*;public class sc extends JFrame implements ActionListenerstatic sc s;static JLabe11abel1 = new 兒abel("學(xué)號:");static JTextField textField1 = new JTextField(&q

49、uot;");static 兒abel label2 = new 兒abel("姓名:");static JTextField textField2 = new JTextField("");static 兒abel label3 = new 兒abel("性別:");static JTextField textField7=new JTextField("");static 兒abel label4 = new 兒abel("出生日期:");static JTextField tex

50、tField3 = new JTextField("");static 兒abel label5 = new 兒abel("政治面貌:");static JTextField textField8=new JTextField("");static 兒abel label6 = new 兒abel("籍貫)static JTextField textField4 = new JTextField("");static 兒abel label7 = new 兒abel("系另U :");

51、static JTextField textField9 = new JTextField("");static 兒abel label8 = new 兒abel("專業(yè):");static JTextField textField5 = new JTextField("");static JButton button4=new JButton(" 刪除)public sc() throws Exceptionthis.setTitle("刪除學(xué)生信息)this.setLayout(null);this.setSi

52、ze(400,400);label1.setBounds(30, 11,51, 33);textField1.setBounds(86, 16, 74, 22);label2.setBounds(162, 11,51,33);textField2.setBounds(192, 16, 44, 22);label3.setBounds(241, 11, 70, 33);textField7.setBounds(275, 15, 50, 25);label4.setBounds(31,53, 55, 33);textField3.setBounds(86, 58, 74, 22);label5.s

53、etBounds(241,53, 70, 33);textField8.setBounds(296, 57, 72, 25);label6.setBounds(163, 53, 26, 33);textField4.setBounds(191,58, 44, 22);label7.setBounds(30, 94, 50, 33);textField9.setBounds(86,94,74,22);label8.setBounds(163, 94, 51,33);textField5.setBounds(190, 99, 178, 22);button4.setBounds(295,241,8

54、0,33);button4.addActionListener(this);this.add(label1);this.add(label2);this.add(label3);this.add(label4);this.add(label5);this.add(label6);this.add(label7);this.add(label8);this.add(textField1);this.add(textField2);this.add(textField3);this.add(textField4);this.add(textField5);this.add(textField7);

55、this.add(textField8);this.add(textField9); this.add(button4); this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.setVisible(true);public static void main(String口 args) throws Exception sc a= new sc();a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);一 一public void actionPerformed(ActionEven

56、t e)/sc if (e.getSource() = button4) try catch (ClassNotFoundException ce) JOptionPane.showMessageDialog(s,ce.getMessage(); try Connectioncon=DriverManager.getConnection("jdbc:odbc:stu","sa","");Statement stmt = con.createStatement();ResultSet rs=stmt.executeQuery("

57、;select * from xinxi where學(xué)號二"'+textField1.getText()+"”');if(textField1.getText().trim().equals("") JOptionPane.showMessageDialog(this,”學(xué)號不可為空!"); else if(rs.next() JOptionPane.showConfirmDialog(null,”確定要刪除該信息嘛? n刪除的信息將不能恢復(fù),繼續(xù)?","刪除 確定 ”,JOptionPane.OK_CANC

58、EL_OPTION);,JOption.QUESTION_MESSAGE)=0;stmt.execute("deletefrom xinxi where 學(xué)號='"+textField1.getText()+"”');JOptionPane.showMessageDialog(null,"刪除信息成 功!"); this.dispose();else JOptionPane.showMessageDialog(null,”無此學(xué)號對應(yīng)信息","警告",JOptionPane.WARNING_MESS

59、AGE);catch(Exception ed)JOptionPane.showMessageDialog(s,ed.getMessage();/cx.java查詢界面import javax.swing.*;import java.awt.*;import java.sql.*;public class cx extends JFrame implements ActionListenerstatic cx s;static JLabe11abel1 = new 兒abel("學(xué)號:");static JTextField textField1 = new JTextField("");static 兒abel label2 = new 兒abel("姓名:");static JTextField textField2 = new JTextField("");static 兒abel

溫馨提示

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

評論

0/150

提交評論