Java JDBC 提供了 java.sql.Driver、java.sql.DriverManager、javax.sql.DataSource 三个接口,另外还有不同类型的连接池技术,它们之间的关系是什么?下面就简单说一下。
java.sql.Driver:是 Java 提供的一个用来连接数据库的驱动接口,具体实现由各数据库厂商完成。常见的实现有:Mysql 的实现 com.mysql.jdbc.Driver。是真正获取数据库连接 Connection 的接口(类) 。
package java.sql;
public interface Driver {
Connection connect(String url, java.util.Properties info) throws SQLException;
...
}
java.sql.DriverManager:是 Java 提供的数据库驱动管理器,用来管理 java.sql.Driver 接口的实现。一般都是通过调用该接口的 getConnection() 或者其重载的方法来获取数据库连接。其底层也是通过调用 java.sql.Driver 接口的 connect() 方法来获取连接。
package java.sql;
public class DriverManager {
//用来存放所有注册的驱动集合
private final static CopyOnWriteArrayList<DriverInfo> registeredDrivers = new CopyOnWriteArrayList<>();
// Worker method called by the public getConnection() methods.
private st

Java JDBC 中的 java.sql.Driver 是数据库连接接口,由数据库厂商实现,如 Mysql 的 com.mysql.jdbc.Driver。java.sql.DriverManager 是管理 Driver 的接口,通过它获取数据库连接。javax.sql.DataSource,即数据源,是数据库连接的替代,包含连接池和管理,从连接池获取连接以减少资源消耗。常见的连接池技术有 DBCP、C3P0、druid 和 HikariCP。数据源通过连接池提供服务,实现了与数据库连接的解耦和服务增强。
最低0.47元/天 解锁文章
7393

被折叠的 条评论
为什么被折叠?



