1. 概念
JDBC是 Java DataBase Connectivity 的简写,翻译过来就是 Java 操作数据库。
目的是使用统一的Java代码操作所有关系型数据库。
JDBC实际是定义了一套操作所有关系型数据库的接口。
不同的数据库厂商根据自己的数据库实现了这套接口,提供数据库的驱动 jar 包。使用JDBC接口编程,实际上执行操作的是驱动 jar 包中的类。
2. 基本步骤
(1) 导入驱动 jar 包
不同的数据库提供了不同的 jar 包,提供的 jar 包也需要选择跟数据库版本匹配的版本。
(2) 注册驱动
Class.forName("驱动文件");
其实驱动文件就是 jar 包中驱动文件的目录。
(3) 获取数据库连接对象
Connection conn = DriverManager.getConnection("url地址","用户名","密码");
(4) 定义SQL语句
String sql = "SQL语句";
(5) 获取执行SQL的对象
Statement stat = conn.createStatement();
(6) 执行SQL语句
stat.方法(sql)
(7) 释放资源
stat.close();
conn.close();
简单的小例子:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class JDBC { public static void main(String[] args) { Connection conn = null; Statement stmt = null; try { Class.forName("com.mysql.cj.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/" + "db?characterEncoding=UTF-8&serverTimezone=UTC&useSSL=false", "root","saqwedcxz"); String sql = "UPDATE user SET age=66 WHERE id=1"; stmt = conn.createStatement(); int num = stmt.executeUpdate(sql); if (num > 0) { System.out.println("Update successfully"); }else{ System.out.println("Update failed"); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { if(stmt != null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if(conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }