美文网首页
数据库驱动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