JDBC API允许用户访问任何形式的表格数据,尤其是存储在关系数据库中的数据。
执行流程:
1)连接数据源,如:数据库
2)为数据库传递查询和更新指令
3)处理数据库响应并返回的结果。
JDBC英文名为:Java Data Base Connectivity(Java数据库连接),官方解释它是Java编程语言和广泛地数据库之间独立于数据库的连接标准的Api.
工作原理图:
常用接口
提供的接口包括:JAVA Api:提供对JDBC的管理连接;Java Driver Api:支持JDBC管理到驱动器连接。
DriverManager:这个类管理数据库驱动程序的列表,查看加载的驱动是否符合JAVA Driver Api的规范。
Connection:与数据库中的所有通信是通过唯一的连接对象。
Statement:把创建的sql对象,转而存储到数据库当中。
ResultSet:它是一个迭代器,用户检索查询数据。
操作流程图
JDBC编程步骤
加载驱动程序;
Class.forName(driverClass) //加载MySql驱动 Class.forName("com.mysql.jdbc.Driver") //加载Oracle驱动 Class.forName("oracle.jdbc.driver.OracleDriver")
获得数据库连接:
DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/BullMan", "root", "root");
创建Statement/PreparedStatement对象:
conn.createStatement();
conn.prepareStatement(sql);
完整实例
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class DbUtil { public static final String URL = "jdbc:mysql://localhost:3306/imooc"; public static final String USER = "liulx"; public static final String PASSWORD = "123456"; public static void main(String[] args) throws Exception { //1.加载驱动程序 Class.forName("com.mysql.jdbc.Driver"); //2. 获得数据库连接 Connection conn = DriverManager.getConnection(URL, USER, PASSWORD); //3.操作数据库,实现增删改查 Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT user_name, age FROM imooc_goddess"); //如果有数据,rs.next()返回true while(rs.next()){ System.out.println(rs.getString("user_name")+" 年龄:"+rs.getInt("age")); } } }