这段小程序和mysql数据库连接,实现和技术十分简单:
import java.util.*;
import javax.swing.*;
import java.sql.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.lang.*;
public class Task6 extends JFrame{
private static final String URL = "jdbc:mysql://localhost:3306/student";
private static final String username="root";
private static final String password="mysql";
JButton button1,button2,button3;
JTextField text1,text2,text3,text4;
static{
try{
Class.forName("com.mysql.jdbc.Driver");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
public Task6(){
super();
setTitle("学生信息管理系统");
setBounds(100,100,500,210);
getContentPane().setLayout(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel label1=new JLabel();
label1.setText("学号:");
label1.setBounds(20,20,50,30);
getContentPane().add(label1);
text1=new JTextField();
text1.setBounds(70,20,70,30);
getContentPane().add(text1);
JLabel label2=new JLabel();
label2.setText("姓名:");
label2.setBounds(160,20,50,30);
getContentPane().add(label2);
text2=new JTextField();
text2.setBounds(210,20,70,30);
getContentPane().add(text2);
JLabel label3=new JLabel();
label3.setText("年龄:");
label3.setBounds(300,20,50,30);
getContentPane().add(label3);
text3=new JTextField();
text3.setBounds(350,20,70,30);
getContentPane().add(text3);
button1=new JButton();
button1.setText("查询");
button1.setBounds(70,70,70,30);
button1.addActionListener(new Action1());
getContentPane().add(button1);
button2=new JButton();
button2.setText("追加");
button2.setBounds(210,70,70,30);
button2.addActionListener(new ActionListener (){
public void actionPerformed(ActionEvent e){
JButton button=(JButton)e.getSource();
try{
Connection conn = DriverManager.getConnection(URL, username,
password);
String number1=text1.getText();
String name=text2.getText();
String age1=text3.getText();
int age=Integer.parseInt(age1);
String sql="insert into student(id,name,age) values(?,?,?)";
PreparedStatement statement=conn.prepareStatement(sql);
statement.setString(1, number1);
statement.setString(2, name);
statement.setInt(3, age);
statement.executeUpdate();
text4.setText("完成");
statement.close();
conn.close();
}catch(SQLException e1){
e1.printStackTrace();
}
}
});
getContentPane().add(button2);
button3=new JButton();
button3.setText("删除");
button3.setBounds(350,70,70,30);
button3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JButton button=(JButton)e.getSource();
try{
Connection conn = DriverManager.getConnection(URL, username,
password);
String number=text1.getText();
String sql="delete from student where id=?";
PreparedStatement state=conn.prepareStatement(sql);
state.setString(1, number);
state.executeUpdate();
text4.setText("完成");
state.close();
conn.close();
}catch(SQLException e1){
e1.printStackTrace();
}
}
});
getContentPane().add(button3);
JLabel label4=new JLabel();
label4.setText("状态:");
label4.setBounds(20,120,50,30);
getContentPane().add(label4);
text4=new JTextField();
text4.setBounds(70,120,350,30);
text4.setEditable(false);
getContentPane().add(text4);
}
class Action1 implements ActionListener{
public void actionPerformed(ActionEvent e){
JButton button=(JButton)e.getSource();
String name;
int age;
text4.setText(" ");
try {
Connection conn = DriverManager.getConnection(URL, username,
password);
String number=text1.getText();
int number1=Integer.parseInt(number);
String sql="select * from student ";
Statement statement=conn.createStatement();
ResultSet rs=statement.executeQuery(sql);
while(rs.next()){
name=rs.getString(2);
age=rs.getInt(3);
if(rs.getInt(1)==number1){
text4.setText("学号:"+number+" "+"姓名:"+name+" "+"年龄:"+age);
break;
}
}
statement.close();
conn.close();
}catch(SQLException e1){
e1.printStackTrace();
}
}
}
public static void main(String[] args) {
Task6 task=new Task6();
task.setVisible(true);
}
}
实现功能:
l 填写学号后,点击“查询”按钮,可以查到该学生姓名、年龄信息,显示在状态栏。
l 填写学号、姓名、年龄后,点击“追加”按钮,可以往数据库中追加该同学信息,在状态栏显示插入是否成功。
l 填写学号后,点击“删除”按钮,可以从数据库中删除该替你刚学信息,在状态栏显示删除是否成功。