java mysql学籍管理系统_java-Mysql学生管理系统

这是一个用Java编写的简单学生管理系统,包含添加、查找、修改和删除功能。用户界面使用JFrame和JButton创建,数据存储使用MySQL数据库。点击按钮触发对应操作,如添加学生信息时,会连接到数据库并插入数据。
摘要由CSDN通过智能技术生成

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

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值