• java-Mysql学生管理系统


    Window1//主方法
    package stu_zizhu1;

    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.Point;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JPanel;

    public class Window1 {
    public static void main(String[] args) {
    JFrame jf=new JFrame("学生管理系统");

    	JButton b1=new JButton("添加");
    	JButton b2=new JButton("查找");
    	JButton b3=new JButton("修改");
    	JButton b4=new JButton("删除");
    	JButton b5=new JButton("浏览");
    	FlowLayout flow = new FlowLayout(FlowLayout.LEFT,10,10);
    	JPanel jp=new JPanel(flow);
    	jp.add(b1);
    	jp.add(b2);
    	jp.add(b3);
    	jp.add(b4);
    	jp.add(b5);
    	
    	jf.add(jp);
    	 
    	jp.setBackground(Color.red);
    	jf.setSize(500,500);
    	jf.setLocation(500,500);
    	jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	jf.setVisible(true);
    	
    	b1.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			Add1 a1=new Add1();
    		}
    	});
    	b2.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			Find1 find1=new Find1();
    		}
    	});
    	b3.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			Modify1 modify1=new Modify1();
    		}
    	});
    	b4.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			Delete1 delete1=new Delete1();
    		}
    	});
    	b5.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			Look1 look1=new Look1();
    		}
    	});
    
    }
    

    }

    package stu_zizhu1;

    import java.awt.Button;
    import java.awt.GridLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.sql.DriverManager;
    import java.sql.SQLException;

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;

    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.PreparedStatement;
    import com.mysql.jdbc.Statement;

    public class Add1 extends JFrame{

    //定义标签
    JLabel jlid=new JLabel("ID:");
    JLabel jlname=new JLabel("Name:");
    JLabel jlage=new JLabel("Age:");
    JLabel jlsex=new JLabel("Sex:");
    JLabel jlscore=new JLabel("Score:");
    JLabel jlbirthday=new JLabel("Birthday:");
    //定义文本框
    
    JTextField jfid=new JTextField("",20);
    JTextField jfname=new JTextField("",20);
    JTextField jfage=new JTextField("",20);
    JTextField jfsex=new JTextField("",20);
    JTextField jfscore=new JTextField("",20);
    JTextField jfbirthday=new JTextField("",20);
    
    //定义按钮(本人再次严重犯错JButton被我写成Button 真的是头疼)
    JButton tianjia=new JButton("添加");
    JButton chongzhi =new JButton("重置");
    JButton fanhui=new JButton("返回");
    
    public  Add1() {
    	//定义面板
    	
    	//jpid面板添加标签(jlid)&&文本框(jfid)
    	JPanel jpid=new JPanel();
    	jpid.add(jlid);
    	jpid.add(jfid);
    	
    	JPanel jpname=new JPanel();
    	jpname.add(jlname);
    	jpname.add(jfname);
    	
    	JPanel jpage=new JPanel();
    	jpage.add(jlage);
    	jpage.add(jfage);
    	
    	JPanel jpsex=new JPanel();
    	jpsex.add(jlsex);
    	jpsex.add(jfsex);
    	
    	JPanel jpscore=new JPanel();
    	jpscore.add(jlscore);
    	jpscore.add(jfscore);
    	
    	JPanel jpbirthday=new JPanel();
    	jpbirthday.add(jlbirthday);
    	jpbirthday.add(jfbirthday);
    	
    	JPanel jpbutton=new JPanel(new GridLayout(1,3));
    	jpbutton.add(tianjia);
    	jpbutton.add(chongzhi);
    	jpbutton.add(fanhui);
    	
    	//按钮添加监听器
    	tianjia.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent e) {
    			Connection conn=null;
    			PreparedStatement prestat=null;
    			Statement stat =null;
    			String sql ="insert into student1(id,name,age,sex,score,birthday) "+"values(?,?,?,?,?,?)";//少加一个问好?
    			try{
    				Class.forName("Driver");
    				System.out.println("JBDC 加载成功!");
    			}catch(Exception a){
    				System.out.println("JBDC 狗带!");
    				a.printStackTrace();
    			}
    			try {
    				conn= (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yonghu?useSSL=false","root","123456");
    				prestat=(PreparedStatement) conn.prepareStatement(sql);
    				
    				prestat.setString(1,jfid.getText());
    				prestat.setString(2,jfname.getText());
    				prestat.setString(3,jfage.getText());
    				prestat.setString(4,jfsex.getText());
    				prestat.setString(5,jfscore.getText());
    				prestat.setString(6,jfbirthday.getText());
    				
    				prestat.executeUpdate();
    			} catch (SQLException s) {
    				// TODO Auto-generated catch block
    				s.printStackTrace();
    			}finally {
    				try {
    					conn.close();
    				} catch (SQLException e1) {
    					// TODO Auto-generated catch block
    					e1.printStackTrace();
    				}
    			}
    			
    		}
    		
    	});
    	fanhui.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent e) {
    			Window1 window1=new Window1();
    		}
    		
    	});
    	chongzhi.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent e) {
    			jfid.setText("");
    			jfname.setText("");
    			jfage.setText("");
    			jfsex.setText("");
    			jfscore.setText("");
    			jfbirthday.setText("");
    			
    		}
    		
    	});
    
    
    	this.setTitle("添加学生信息");
    	this.setLayout(new GridLayout(9,1));
    	this.add(jpid);
    	this.add(jpname);
    	this.add(jpage);
    	this.add(jpsex);
    	this.add(jpscore);
    	this.add(jpbirthday);
    	this.add(jpbutton);
    	this.setLocation(400,300);
    	this.setSize(350,300);
    	this.setVisible(true);
    	
    }
    

    }
    package stu_zizhu1;

    import java.awt.GridLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;

    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.Statement;

    public class Find1 extends JFrame{
    JLabel jlid=new JLabel("ID:");
    JTextField jtfid=new JTextField("",20);

    JLabel jlname=new JLabel("Name:");
    JLabel jlage=new JLabel("Age:");
    JLabel jlsex=new JLabel("Sex:");
    JLabel jlscore=new JLabel("Score:");
    JLabel jlbirthday=new JLabel("Birthday:");
    
    
    //JLabel jid=new JLabel();
    JLabel jname=new JLabel();
    JLabel jage=new JLabel();
    JLabel jsex=new JLabel();
    JLabel jscore=new JLabel();
    JLabel jbirthday=new JLabel();
    //此处按钮一定要设置成JButton
    JButton query=new JButton("查询");
    JButton ret=new JButton("返回");
    //此处不可有void
        public   Find1() {
    	JPanel jpid=new JPanel();
    	jpid.add(jlid);
    	jpid.add(jtfid);
    	
    	JPanel jpname=new JPanel();
    	jpname.add(jlname);
    	jpname.add(jname);
    	
    	JPanel jpage=new JPanel();
    	jpage.add(jlage);
    	jpage.add(jage);
    	
    	JPanel jpsex=new JPanel();
    	jpsex.add(jlsex);
    	jpsex.add(jsex);
    	
    	JPanel jpscore=new JPanel();
    	jpscore.add(jlscore);
    	jpscore.add(jscore);
    	
    	JPanel jpbirthday=new JPanel();
    	jpbirthday.add(jlbirthday);
    	jpbirthday.add(jbirthday);
    	
    	JPanel button1=new JPanel(new GridLayout(1,1));
    	button1.add(query);
    	button1.add(ret);
    	
    	query.addActionListener(new ActionListener() {
    
    		@Override
    		public void actionPerformed(ActionEvent e1) {
    			Connection conn=null;
    			Statement state=null;
    			ResultSet res=null;
    			//此处犯错 忘记写id
    			String sql="select id,name,age,sex,score,birthday from student1;";
    			try {
    				Class.forName("com.mysql.jdbc.Driver");
    			} catch (ClassNotFoundException e) {
    				System.out.println("123");
    				e.printStackTrace();
    			}
    			
    			try {
    				conn=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yonghu?useSSL=false","root","123456");
    				state=(Statement) conn.createStatement();
    				res=state.executeQuery(sql);
    				while(res.next()) {
    					if(res.getString(1).equals(jtfid.getText())) {
    						jname.setText(res.getString(2));
    						jage.setText(res.getString(3));
    						jsex.setText(res.getString(4));
    						jscore.setText(res.getString(5));
    						jbirthday.setText(res.getString(6));
    						
    					}
    				}
    			} catch (SQLException e) {
    				System.out.println("1234");
    				e.printStackTrace();
    			}finally {
    				try {
    					conn.close();
    				} catch (SQLException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
    			}
    		}
    		
    	});
    	
    	ret.addActionListener(new ActionListener() {
    
    		@Override
    		public void actionPerformed(ActionEvent e) {
    			Window1 window1=new Window1();
    			
    		}
    		
    	});
    	this.setTitle("学生查询系统 ");
    	this.setLayout(new GridLayout(9,1));//9组建
    	this.add(jpid);
    	this.add(jpname);
    	this.add(jpage);
    	this.add(jpsex);
    	this.add(jpscore);
    	this.add(jpbirthday);
    	this.add(button1);
    	this.setSize(300, 400);
    	this.setLocation(300, 400);
    	this.setVisible(true);
    	
    	
    	
    	
    	
    }
    

    }
    package stu_zizhu1;

    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.GridLayout;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Vector;

    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.JTextField;

    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.PreparedStatement;

    public class Look1 extends JFrame{
    Connection conn =null;
    PreparedStatement pre=null;
    ResultSet res=null;

    JScrollPane jps=null;
    Vector columnsname=null;
    Vector rowData=null;
    
    public  Look1() {
    	JPanel jp1=new JPanel(); 
    	jp1.setBackground(Color.gray);
    	jp1.setSize(500, 500);
    	JLabel jb=new JLabel("欢迎使用学生管理系统");
    	jb.setBounds(0, 0, 50, 50);
    	jp1.add(jb);
    	
    	
    	JPanel jp=new JPanel();
    	//JLabel jb1=new JLabel("欢迎使用学生管理系统");
    	jp.setSize(400, 400);
    	jp.setBackground(Color.green);
    	//jp.add(jb1);
    	jp.add(jp1);
    	//定义列名
    	columnsname=new Vector();
    	columnsname.add("id");
    	columnsname.add("name");
    	columnsname.add("age");
    	columnsname.add("sex");
    	columnsname.add("score");
    	columnsname.add("birthday");
    	rowData =new Vector();
    	try {
    		Class.forName("com.mysql.jdbc.Driver");
    		conn=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yonghu?useSSL=false","root","123456");
    		pre=(PreparedStatement) conn.prepareStatement("select *from student1");
    		res=pre.executeQuery();
    		while(res.next()) {
    			Vector hang =new Vector();
    			hang.add(res.getString(1));
    			hang.add(res.getString(2));
    			hang.add(res.getString(3));
    			hang.add(res.getString(4));
    			hang.add(res.getString(5));
    			hang.add(res.getString(6));
    			rowData.add(hang);
    			
    		}
    		System.out.println("load  ok!");
    	} catch (Exception e) {
    		System.out.println("go die");
    		e.printStackTrace();
    	}finally {
    		try {
    			res.close();
    			pre.close();
    			conn.close();
    			System.out.println("close ok");
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		
    	}
    	JTable jtable=new JTable(rowData,columnsname);
    	jps=new JScrollPane(jtable);
    	
    	this.add(jps);
    	this.setTitle("学生浏览系统");
    	this.setLayout(new GridLayout(3,4));
    	
    	this.add(jp);
    	
    	
    	this.setSize(400, 500);
    	this.setLocation(300,400);
    	this.setVisible(true);
    	this.setResizable(false);
    	
    }
    

    }
    package stu_zizhu1;

    import java.awt.GridLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;

    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;

    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.PreparedStatement;
    import com.mysql.jdbc.Statement;

    import First.Window;

    public class Modify1 extends JFrame{
    //定义标签
    JLabel jlid=new JLabel("ID:");
    JLabel jlname=new JLabel("Name:");
    JLabel jlage=new JLabel("Age:");
    JLabel jlsex=new JLabel("Sex:");
    JLabel jlscore=new JLabel("Score:");
    JLabel jlbirthday=new JLabel("Birthday:");
    //定义文本框

    JTextField jfid=new JTextField("",20);
    JTextField jfname=new JTextField("",20);
    JTextField jfage=new JTextField("",20);
    JTextField jfsex=new JTextField("",20);
    JTextField jfscore=new JTextField("",20);
    JTextField jfbirthday=new JTextField("",20);
    
    //定义按钮(本人再次严重犯错JButton被我写成Button 真的是头疼)
    JButton change=new JButton("修改");
    JButton chongzhi =new JButton("重置");
    JButton fanhui=new JButton("返回");
    
    public  Modify1() {
    	//定义面板
    
    	//jpid面板添加标签(jlid)&&文本框(jfid)
    	JPanel jpid=new JPanel();
    	jpid.add(jlid);
    	jpid.add(jfid);
    
    	JPanel jpname=new JPanel();
    	jpname.add(jlname);
    	jpname.add(jfname);
    
    	JPanel jpage=new JPanel();
    	jpage.add(jlage);
    	jpage.add(jfage);
    
    	JPanel jpsex=new JPanel();
    	jpsex.add(jlsex);
    	jpsex.add(jfsex);
    
    	JPanel jpscore=new JPanel();
    	jpscore.add(jlscore);
    	jpscore.add(jfscore);
    
    	JPanel jpbirthday=new JPanel();
    	jpbirthday.add(jlbirthday);
    	jpbirthday.add(jfbirthday);
    
    	JPanel jpbutton=new JPanel(new GridLayout(1,3));
    	jpbutton.add(change);
    	jpbutton.add(chongzhi);
    	jpbutton.add(fanhui);
    	change.addActionListener(new ActionListener() {
    
    		@Override
    		public void actionPerformed(ActionEvent arg0) {
    			//String id1=jfid.getText();
    			String name1=jfname.getText();//此处犯错
    			String age1=jfage.getText();
    			String sex1=jfsex.getText();
    			String score1=jfscore.getText();
    			String birthday1=jfbirthday.getText();
    			
    			Connection conn=null;
    			Statement state=null;
    

    // PreparedStatement prestate=null;
    ResultSet res=null;

    			String sql="select id,name,age,sex,score,birthday from student1;";
    			
    			try{
    				Class.forName("com.mysql.jdbc.Driver");
    				
    			}catch(Exception d){
    				System.out.println("jdbc fall");
    				d.printStackTrace();
    			}
    			try{
    				conn=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yonghu?useSSL=false","root","123456");
    				state=(Statement) conn.createStatement();
    				res=state.executeQuery(sql);
    				while (res.next())
    				{
    					//change
    					if (res.getString(1).equals(jfid.getText()))
    					{
                        try{
    						Class.forName("com.mysql.jdbc.Driver");
    					}catch(Exception d){
    						System.out.println("jdbc fall");
    						d.printStackTrace();
    					}
    						String sql1="update student1 set name='"+name1+"'where id='"+jfid.getText()+"'";
    						String sql2="update student1 set age='"+age1+"'where id='"+jfid.getText()+"'";
    						String sql3="update student1 set sex='"+sex1+"'where id='"+jfid.getText()+"'";
    						String sql4="update student1 set score='"+score1+"'where id='"+jfid.getText()+"'";
    						String sql5="update student1 set birthday='"+birthday1+"'where id='"+jfid.getText()+"'";
    						try {
    							conn=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/yonghu?useSSL=false","root","123456");
    							state=(Statement) conn.createStatement();
    							state.execute(sql1);
    							state.execute(sql2);
    							state.execute(sql3);
    							state.execute(sql4);
    							state.execute(sql5);
    						} catch (SQLException g) {
    							// TODO Auto-generated catch block
    							g.printStackTrace();
    						}try{
    							state.close();
    							conn.close();
    						}catch(SQLException ar){
    							ar.printStackTrace();
    					}
    
    						break;
    					}
    					
    				//change end
    				}
    			}catch (SQLException e1) {
    				// TODO Auto-generated catch block
    				e1.printStackTrace();
    			
    			
    		}
    			finally{
    				try{
    					conn.close();
    				}catch(SQLException ar){
    					ar.printStackTrace();
    				}
    		
    			}
    			
    
    
    
    		}
    
    	});
    	fanhui.addActionListener(new ActionListener(){
    		public void actionPerformed(ActionEvent e){
    			Window window = new Window();			
    		}			
    	});
    	chongzhi.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent e) {
    			jfid.setText("");
    			jfname.setText("");
    			jfage.setText("");
    			jfsex.setText("");
    			jfscore.setText("");
    			jfbirthday.setText("");
    
    		}
    
    	});
    	this.setTitle("修改学生信息");
    	this.setLayout(new GridLayout(9,1));
    	this.add(jpid);
    	this.add(jpname);
    	this.add(jpage);
    	this.add(jpsex);
    	this.add(jpscore);
    	this.add(jpbirthday);
    	this.add(jpbutton);
    	this.setLocation(400,300);
    	this.setSize(350,300);
    	this.setVisible(true);
    
    }
    

    }

  • 相关阅读:
    Typescript和React结合项目初始化
    React 和 TypeScript 如何一起使用
    Cesium取代leaflet,和Vue等前端框架结合
    cesium之3dtiles的制作问题
    Cesium-3dTiles格式详解
    TIN和等高线的关系
    CAD如何生成等高线
    Cesium风场
    cesium加载等高线
    DEM坡度和坡向分析
  • 原文地址:https://www.cnblogs.com/Pythons/p/10932308.html
Copyright © 2020-2023  润新知