1、学生信息管理系统完整代码数据库图片Java应用开发课程设计报告题 目: 学生信息管理系统 指导老师: * 姓 名: * 专 业: 计算机科学与技术 班 级: 10级1班 日 期: 2012年6月 一、系统总体设计(一)设计目标及完成功能1、设计目标学生信息管理系统是学校的一项重要数据资源,因而学生信息管理必然成为学校的一项常规性的重要工作。加强学生信息管理在单纯依靠以手工管理的方法,不仅需要耗用大量的人力、物力、财力,而且由于人工管理存在着大量的不可控因素,造成了信息管理的某些不规范,工作效率低,难以达到预期的目的。为提高工作效率、保证学校能够及时准确了解各学生的各种信息及学生总体信息,开发学
2、生信息管理系统。2、完成功能完成学生信息的基本管理。本系统分为管理员和学生管理两部分。管理员管理项目如下:添加学生信息、修改学生信息、查询学生信息、删除学生信息;学生管理项目如下:添加学生信息、查询学生信息。(二)系统流程图二、详细设计图2-1 登陆界面1图2-2 登陆界面2图2-3 系统主界面图2-4 添加学生信息界面图2-5 修改学生信息界面图2-6 查询学生信息界面图2-7 删除学生信息界面图2-8 系统信息界面图2-9 我的信息界面 (二) 系统设计1、系统结构图2、类及功能列表序号类名方法类功能说明方法名功能1FirstFirst()构造方法,构造界面并注册事件美观效果2Logina
3、ctionPerformed(actionEvent e)处理“登陆”按钮的事件实现登陆功能 Connctsql()连接数据库3MenuactionPerformed(actionEvent e)处理菜单按钮的事件主界面,实现管理员操作功能Menu()构造方法,构造界面及注册事件4addFormConnctsql()连接数据库管理员添加学生信息actionPerformed(ActionEvent e)处理按钮事件5modifyFormConnctsql()连接数据库管理员修改学习actionPerformed(ActionEvent ae)处理按钮事件6SerchConnctsql()连接数
4、据库管理员查询学生信息actionPerformed(ActionEvent e)处理按钮事件7deleteFormConnctsql()连接数据库管理员删除学生信息actionPerformed(ActionEvent ae)处理按钮事件8Menu2actionPerformed(actionEvent e)处理菜单按钮的事件主界面,实现学生操作功能Menu2()构造方法,构造界面及注册事件9addForm2Connctsql()连接数据库学生添加学生信息actionPerformed(ActionEvent e)处理按钮事件10Serch2Connctsql()连接数据库学生查询学生信息a
5、ctionPerformed(ActionEvent e)处理按钮事件11AboutmeAboutme()构造方法,构造界面帮助窗口,关于我12AboutSystemAboutSystem()构造方法,构造界面帮助窗口,关于系统 (三) 源代码及技术1、所有代码-数据库将以下图片以上图名称存入images文件夹目录下。要自己将各代码新建为.java格式文件,放在与images文件夹同目录下。并将数据库附加到sqlserver2005,再不需要任何改动方可运行。登陆界面1import java.io.*;import java.awt.*;import javax.swing.*;import
6、java.awt.event.*;class First extends JFrame implements MouseListener private JPanel panel=(JPanel)getContentPane(); private JPanel panel2=new JPanel(); JLabel l1; public First() super(学生信息管理系统); ImageIcon background= new ImageIcon(imagesLogin.jpg);/整个背景图片 JLabel L=new JLabel(background); L.setBounds
7、(0,0,500,400);/取整张图片 panel.setOpaque(false); panel2.setOpaque(false); ImageIcon button= new ImageIcon(imagesT20.jpg); l1=new JLabel(button); panel2.add(l1); panel.add(panel2); panel.setLayout(null); panel.add(L); panel2.setBounds(118,258,300,100); /设置监听器 l1.addMouseListener(this); getLayeredPane().s
8、etLayout(null); getLayeredPane().add(L, new Integer(Integer.MIN_VALUE); setSize(500,400); setVisible(true); setResizable(false); setLocation(450,200); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); public void mouseClicked(MouseEvent e) if(JLabel)e.getSource()=l1) this.dispose(); Login d=new Login(
9、); public void mouseExited(MouseEvent e) if(JLabel)e.getSource()=l1) l1.setBackground(Color.BLACK); public void mouseEntered(MouseEvent e) if(JLabel)e.getSource()=l1) l1.setForeground(Color.BLUE); public void mouseReleased(MouseEvent e) public void mousePressed(MouseEvent e) public static void main(
10、String args) First f=new First();登陆界面2import java.io.*;import java.sql.*;import java.awt.*;import javax.swing.*;import java.awt.event.*;public class Login extends JFrame implements ActionListener Connection conn;/定义连接对象 Statement stmt;/语句 ResultSet rst;/结果集 private JLabel lb1 = new JLabel(帐号:); priv
11、ate JLabel lb2 = new JLabel(口令:); private JLabel lb3 = new JLabel(学生信息管理系统); private JLabel lb4=new JLabel(请选择登陆角色); private TextField t1 = new TextField(15); private TextField t2 = new TextField(15); private JButton b1=new JButton(登 陆); private JButton b2=new JButton(取 消); private JComboBox user1=n
12、ew JComboBox(); private JPanel p1=(JPanel)getContentPane(); private JPanel p2=new JPanel(); private JPanel p3=new JPanel(); private JPanel p4=new JPanel(); private JPanel p5=new JPanel(); public Login() setTitle(学生信息管理系统); setVisible(true); setResizable(false); setLayout(null); user1.addItem(管理员); u
13、ser1.addItem(学生); user1.setFont(new Font(华文行楷,Font.BOLD,14); lb1.setFont(new Font(华文行楷,Font.BOLD,14); lb2.setFont(new Font(华文行楷,Font.BOLD,14); lb3.setFont(new Font(华文行楷,Font.BOLD,35); lb4.setFont(new Font(华文行楷,Font.BOLD,14); ImageIcon background= new ImageIcon(imagesLogin2.jpg); JLabel L=new JLabel(
14、background); L.setBounds(0, 0,500,400); p2.add(lb3);p5.add(lb4);p5.add(user1);p3.add(lb1);p3.add(t1);p3.add(lb2);p3.add(t2);p4.add(b1); p4.add(b2); p1.setOpaque(false); p2.setOpaque(false); p3.setOpaque(false); p4.setOpaque(false); p5.setOpaque(false); t2.setEchoChar(*); p1.setLayout(null); p1.add(L
15、); /存放背景图片 p2.setBounds(90,44,350,100); p3.setBounds(155,160,210,60); p5.setBounds(132,100,250,40); p4.setBounds(150,250,300,100); /将所有panel加到panel1上 p1.add(p2);p1.add(p3);p1.add(p4);p1.add(p5); /可视 位置 getLayeredPane().setLayout(null); getLayeredPane().add(L, new Integer(Integer.MIN_VALUE); setSize(
16、500,400); setLocation(450,200); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /设置监听器 b1.addActionListener(this); b2.addActionListener(this); public void actionPerformed(ActionEvent e) if(JButton)e.getSource()=b1) if(user1.getSelectedItem().equals(管理员) tryConnctsql(); stmt=conn.createStatement(Resu
17、ltSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); rst = stmt.executeQuery(SELECT * FROM usertable where id=+ t1.getText().trim() +); if(rst.next()if(rst.getString(1).trim().equals(t2.getText().trim()&! rst.getString(1).trim().equals() this.dispose(); Menu m=new Menu(); else if(!rst.getString(
18、1).trim().equals(t2.getText().trim()&!rst.getString(1).trim().equals() JOptionPane.showMessageDialog(null,密码异常!,温馨提 示!,JOptionPane.INFORMATION_MESSAGE,null); else if(!rst.next() JOptionPane.showMessageDialog(null,不存在此用户!,温馨提示!,JOptionPane.INFORMATION_MESSAGE,null); if(t1.getText().equals() JOptionPa
19、ne.showMessageDialog(null,请输入账号!,温馨提示!,JOptionPane.INFORMATION_MESSAGE,null); catch(Exception err) System.out.println(err); else if(user1.getSelectedItem().equals(学生) tryConnctsql();stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);/结果集可滚动,可更新if(t1.getText().equ
20、als()JOptionPane.showMessageDialog(null,请输入您的学号!,温馨提示!,JOptionPane.INFORMATION_MESSAGE,null); rst = stmt.executeQuery(SELECT * FROM stuuser where 学号=+ t1.getText().trim() +);/将输入的账号与stuuser表比对 while(rst.next()if(rst.getString(1).trim().equals(t2.getText().trim() new Menu2();dispose(); else JOptionPa
21、ne.showMessageDialog(null,密码异常!,温馨提示!,JOptionPane.INFORMATION_MESSAGE,null); t1.setText(null);/清空账号 t2.setText(null); /清空密码 catch(Exception err) System.out.println(err); else if(JButton)e.getSource()=b2) this.dispose();/关闭窗体 private void Connctsql()/连接数据库的函数 try Class.forName(com.microsoft.sqlserver
22、.jdbc.SQLServerDriver);conn=DriverManager.getConnection(jdbc:sqlserver:/localhost:1433; DatabaseName=student,sa,123456789);/连接student数据库 catch(Exception e) System.out.println(e); public static void main(String args) Login l=new Login(); 系统主界面import java.awt.*;import java.sql.*;import javax.swing.*;i
23、mport java.awt.event.*;public class Menu extends JFrame private JPanel p1=(JPanel)getContentPane(); private JMenuBar jmb=new JMenuBar(); private JMenu ; private JMenuItemlogout,exit,add,revise,look,delet,aboutsystem,aboutus; Connection con; Statement sql; ResultSet rs; public Menu() setTitle(学生信息管理系
24、统); /设置背景图案ImageIconbackground=new ImageIcon(imagesxitong.jpg); JLabel L=new JLabel(background); L.setBounds(0, 0,800,600); p1.setOpaque(false); p1.setLayout(null); p1.add(L); getLayeredPane().setLayout(null);getLayeredPane().add(L, new Integer(Integer.MIN_VALUE); setJMenuBar(jmb); JMenu(菜单); Denglu
25、=new JMenu(登陆管理); help=new JMenu(帮助); jmb.add(); jmb.add(Denglu); jmb.add(help); Denglu.add(logout=new JMenuItem(注销); Denglu.add(exit=new JMenuItem(退出); (add=new JMenuItem(添加学生信息); (revise=new JMenuItem(修改学生信息); (look=new JMenuItem(查询学生信息); (delet=new JMenuItem(删除学生信息); help.add(aboutsystem=new JMen
26、uItem(关于系统); help.add(aboutus=new JMenuItem(关于我们); logout.addActionListener(new ML(); exit.addActionListener(new ML(); add.addActionListener(new ML(); revise.addActionListener(new ML(); look.addActionListener(new ML(); delet.addActionListener(new ML(); aboutsystem.addActionListener(new ML(); aboutus
27、.addActionListener(new ML();setSize(800,600); setVisible(true);setResizable(false);setLocation(300,100); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); public class ML implements ActionListener public void actionPerformed(ActionEvent e) String m=e.getActionCommand(); if(m.equals(退出) System.exit(0);
28、 if(m.equals(注销) dispose();new Login(); if(m.equals(添加学生信息) dispose();new addForm(); if(m.equals(修改学生信息) dispose();new modifyForm(); if(m.equals(查询学生信息) dispose();new Serch(); if(m.equals(删除学生信息)dispose();new deleteForm(); if(m.equals(关于系统)new AboutSystem(); if(m.equals(关于我们)new Aboutme();添加学生界面import java.sql.*;import java.awt.*;import javax.swing.*;import java.awt.event.*;import javax.swing.table.DefaultTableModel;public class addForm extends JFrame implements ActionListener JLabel label1 = new JLabel(添加学生信