如何连接数据库?
数据库服务启动后,如果用客户端工具,如 Navicat连接的话,需要提供 数据库服务的ip、端口、数据库用户名和密码这些信息就能连接上。可以看到 当前数据库实例上的所有数据库。
使用Java语言怎么连接的呢?常用的数据库连接池如 Hikari、Druid等等连接数据库有什么不一样吗?
Java提供的统一接口、数据库厂商对接口进行实现、第三方数据库连接池工具包对代码的封存关系图如下:
因此,可以得知,连接数据库的原理,就是 数据库厂商实现JDK的API,并且只有这一种方式。至于数据源接口DataSource 也是对Driver的调用,可以查看源码就知道了。 其他的数据库连接池也是对数据库厂商的接口调用。
不过,原理是这样,不可能在开发的过程中 直接对最底层的接口进行调用,这样会重复工作。因此,衍生出很多工具类。不同工具类的实现不同,又存在性能方面的差别。
了解这些后背景后,再使用这些数据库连接池,就不会觉得很神秘了。