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);
}
}