美文网首页
数据库驱动jdbc和数据库连接池dbcp/c3p0/druid

数据库驱动jdbc和数据库连接池dbcp/c3p0/druid

作者: 乡村码农 | 来源:发表于2022-01-08 16:19 被阅读0次

之前面试遇到面试官问:数据库连接池有了解吗?你们用的是哪个?
我当时就懵了:平常只做crud,都是拿来就用,直接一个mapper.xxx,谁会关心连接池这东西呀
于是,我balabala... 好像是默认的,jdbc、c3p0...
说完面试官嘴角微微上扬,也不说对与不对,我内心一万个...ma

em.. 扯得有点远了,说回正事。
今天看spring的源码,看到有jdbc连接数据库的,想起这个问题,特地看了一下相关的知识!

  • jdbc只是一个数据库驱动,用于对数据库建立连接用的。
  • 数据库连接池,是把jdbc创建出来的连接放在一个池子里,共java程序调用的;常用的数据库连接池有:dbcp/c3p0/druid(德鲁伊)

1、jdbc的由来

jdbc驱动是由sun公司提供接口标准,数据库厂商(如mysql/oracle)进行实现的一组数据库访问及操作的程序

jdbc连接数据库的流程及原理

  • (1)在开发环境加载指定数据库的驱动程序
  • (2)在java程序中加载驱动程序
    Class.forName("com.mysql.jdbc.Driver")
    
  • (3)创建数据库连接对象
  • (4)创建Statement对象,用于执行静态sql语句
  • (5)调用Statement对象的相关方法,执行相对应的sql语句
  • (6)关闭数据库连接

2、数据库连接池的比较

dbcp:该连接池的持续运行的稳定性还是可以,不过速度稍慢,在大并发量的压力下稳定性
有所下降,此外它不提供连接池监控
dbcp使用示例
c3p0:该连接池的持续运行的稳定性相当不错,在大并发量的压力下稳定性也有一定保证,
此外它不提供连接池监控
c3p0使用示例
druid:德鲁伊是阿里开源的连接池,号称为监控而生,该连接池的持续运行的稳定性好,速度快,在大并发量的压力下稳定性好,而且提供连接池监控
druid使用示例

相关文章

网友评论

      本文标题:数据库驱动jdbc和数据库连接池dbcp/c3p0/druid

      本文链接:https://www.haomeiwen.com/subject/vqsibltx.html