北京网站建设石榴汇,网络平台推广员,网站栏目怎么做,慈溪网站制作哪家最便宜直接看原文
原文链接:【MyBatis】 连接池技术_mybatis自带连接池-CSDN博客
本文先不说springBoot整合mybatis后的
本文讲的是没有被springBoot整合前的mybatis自己的默认的连接池
--------------------------------------------------------------------------------------…直接看原文
原文链接:【MyBatis】 连接池技术_mybatis自带连接池-CSDN博客
本文先不说springBoot整合mybatis后的
本文讲的是没有被springBoot整合前的mybatis自己的默认的连接池
---------------------------------------------------------------------------------------------------------------------------------
mybatsi的连接池不是默认开启的,是需要你配置指定POOLED的.
一.mybatsi自己的三种数据源
在引入的org.mybatis:mybatis:3.5.6的jar包下,有个datasource包,包下有三个mybatis的数据源,
UNPOOLED 不使用连接池的数据源POOLED 使用连接池的数据源JNDI 使用 JNDI 实现的数据源 因此,我们想用到mybatis自己的连接池的话,就需要在mybatis-config.xml配置文件中配置有连接池的数据源POOLED . 在这三种数据源中我们一般采用的是 POOLED 数据源很多时候我们所说的数据源就是为了更好的管理数据 库连接也就是我们所说的连接池技术。
二.源码解析
相应地MyBatis 内部分别定义了实现了 java.sql.DataSource 接口的 UnpooledDataSource和 PooledDataSource 类来表示 UNPOOLED、POOLED 类型的数据源底层实际上封装了JDBC。
UNPOOLED源码解析 POOLED源码解析
poolMaximumActiveConnections是最大的活动连接数活动连接就是正在与数据库交互的连接默认是10poolMaximumIdleConnections是空闲连接数就是没有处理请求的连接默认是5 UNPOOLED与POOLED的区别 结尾 最后我们可以发现真正连接打开的时间点只是在我们执行SQL语句时才会进行。其实这样做我们也可以 进一步发现数据库连接是我们最为宝贵的资源只有在要用到的时候才去获取并打开连接当我们用完了就再 立即将数据库连接归还到连接池中。