MyBatis整合Druid连接池
本文最后更新于:1 年前
MyBatis做为一个ORM框架,在进行数据库操作时是需要和数据库连接连接的,MyBatis支持基于数据库连接池的连接创建方式。
当我们配置MyBatis数据源时,只要配置了 dataSource 标签的 type 属性值为 POOLED 时,就可以使用 MyBatis 内置的连接池管理连接。如果我们想要使用第三方的数据库连接池,则需进行自定义配置。
常见的连接池
功能 | dbcp | druid | c3p0 | HikariCP |
---|---|---|---|---|
是否支持PSCache | 是 | 是 | 是 | 否 |
监控 | jmx | jmx/log/http | jmx,log | jmx |
扩展性 | 弱 | 好 | 弱 | 弱 |
sql拦截及解析 | 无 | 支持 | 无 | 无 |
代码 | 简单 | 中等 | 复杂 | 简单 |
更新时间 | 2015.8.6 | 2015.10.10 | 2015.12.09 | 2015.12.3 |
特点 | 依赖于common-pool | 阿里开源,功能全面 | 历史久远,代码逻辑复杂,且不易维护 | 优化力度大,功能简单,起源于boneCP |
连接池管理 | LinkedBlockingDeque | 数组 | threadlocal+CopyOnWriteArrayList |
其中,Druid 性能比较好,提供了比较便捷的监控系统。但性能最好的是 Hikari。
Druid连接池配置步骤
1. 添加Druid依赖
1 |
|
2. 创建Druid连接池工厂
1 |
|
3. 将DruidDataSourceFactory配置给MyBatis数据源
mybatis-config.xml |
---|
4. 测试
MemberDAOTest.java |
---|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!