要实现jdbc连接数据库的七个步骤
1. 加载驱动
2. 创建连接,需要先打开数据库才能使用数据库
3. 编写sql语句,实现要求的功能
4. 预编译处理,得到statement对象
5. 执行sql得到结果集
6. 处理结果集,可输出打印结果
7. 关闭资源,依次关闭result、preparestatement、connection
添加jar包的步骤:
1. New lib
2. Copy jar包,也可直接拖进去
3. Add as lib,右键设置
对于增删查改功能,加载驱动、建立连接以及关闭资料这三个步骤是始终需要的。为了避免减少工作量,此时可以建立一个新的类DButil作为工具集用来存放经常使用的步骤。当功能实现前使用connection= DButil.getconnection();来调用DButil类加载驱动并连接数据库,功能完成后通过DButil.close(resultSet,statement,connection);关闭资源,结束功能。
在实现jdbc增删查改功能前,需要在mysql里建立一个名为tb_user的用户表用来存放用户信息。
增删查改四个功能的区别主要在于SQL语句的不同,应使用的SQL语句如下:
增加:insert into tb_user(username,password) value(?,?); //问号表示我们将要添加的信息
删除:String sql="DELETE FROM tb_user where id=5"; //删除tb_user表中id 为5的用户信息
查找:String sql="select * from tb_user"; //输出tb_user表中的所有用户信息
修改:
String sql="Update tb_user SET username='暗香'WHERE id=3"; //将tb_user表中id为3的用户的用户名更新为“暗香”`
代码如下:
增加功能:
import java.sql.*;
public class Insert {
public static void main(String[] args){
ResultSet resultSet = null;
Connection connection=null;
PreparedStatement statement=null;
try{
//1.加载驱动
// Class.forName("com.mysql.jdbc.Driver");
//2.创建连接
connection= DButil.getconnection();
//3.写sql语句
String sql="insert into tb_user(username,password) values(?,?)";
//4.得到statement对象
statement=connection.prepareStatement(sql);
statement.setString(1,"久久");
statement.setString(2,"99");
//5.执行sql得到结果集
statement.executeUpdate();
}catch (Exception e){
e.printStackTrace();
}finally {
DButil.close(resultSet,statement,connection);
}
}
}
删除功能:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Delete {
public static void main(String[] args){
ResultSet resultSet = null;
Connection connection=null;
PreparedStatement statement=null;
try{
connection= DButil.getconnection();
//3.写sql
String sql="DELETE FROM tb_user where id=5";
//4.得到statement对象
statement=connection.prepareStatement(sql);
//5.执行sql得到结果集
statement.executeUpdate();
}catch (Exception e){
e.printStackTrace();
}finally {
DButil.close(resultSet,statement,connection);
}
}
}
查找功能:
import java.sql.*;
public class Demo01 {
public static void main(String[] args) {
ResultSet resultSet = null;
PreparedStatement statement = null;
Connection connection =null;
// 1.加载驱动
try {
// Class.forName("com.mysql.jdbc.Driver");
// 2. 创建数据库连接
connection = DButil.getconnection();
System.out.println("连接数据库成功!");
//3.写sql
String sql="select * from tb_user";
//4.得到statement对象
statement = connection.prepareStatement(sql);
//5.执行sql得到结果集
resultSet = statement.executeQuery();
//6.处理结果集
while(resultSet.next()){
System.out.println(resultSet.getInt(1));
System.out.println(resultSet.getString(2));
System.out.println(resultSet.getString(3));
}
//7.关闭资源集
} catch (Exception e) {
e.printStackTrace();
}finally{
DButil.close(resultSet,statement,connection);
}
}
}
修改功能:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Update {
public static void main(String[] args){
ResultSet resultSet = null;
Connection connection=null;
PreparedStatement statement=null;
try{
connection= DButil.getconnection();
//3.写sql
String sql="Update tb_user SET username='暗香'WHERE id=3";
//4.得到statement对象
statement=connection.prepareStatement(sql);
//5.执行sql得到结果集
statement.executeUpdate();
}catch (Exception e){
e.printStackTrace();
}finally {
DButil.close(resultSet,statement,connection);
}
}`在这里插入代码片`
}
表格查询情况: