MyBatis 如何整合 Druid 连接池?

Mybatis 如何整合 Druid 数据连接池呢?首先打开创建的 Maven 工程,找到 pom.xml 文件,添加 Druid 依赖。

xml 复制代码
<!--druid连接池-->
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>druid</artifactId>
	<version>1.1.14</version>
</dependency>

由于 Mybatis 默认情况下是不支持 Druid 的,需要对 Mybatis 进行如下扩展:

  • 在工程目录下,创建一个名为 datasource 的子包,然后再在这个数据源包下创建一个名为 DruidDataSourceFactory 的类,这是我们自定义的 Druid 连接池工厂,用于构建 Druid 数据连接池,但注意必须继承 自 UnpooledDataSourceFactory(由Mybatis 提供的用于自定义数据工厂的扩展),工程目录结构如下:

    代码如下:

    java 复制代码
    public class DruidDataSourceFactory extends UnpooledDataSourceFactory {//mybatis提供用于提供自定义数据工厂的扩展
        @Override
        public DataSource getDataSource() {
            try {
               ((DruidDataSource)this.dataSource).init();//获取数据源的时候需要额外进行一次数据初始化
            } catch (SQLException e) {
                throw new RuntimeException(e);
            }
            return this.dataSource;
        }
        //实例化
        public DruidDataSourceFactory() {
            this.dataSource = new DruidDataSource();
        }
    }
  • 作为这个工厂类,如何让 Mybatis 知晓呢?下面要回到 mybatis-config.xml 这个配置文件中对 datasource标签里的内容进行改造(对数据源进行设置),设置结果如下:

    注意 :Mybatis 使用自带数据连接池时,数据库JDBC驱动的属性名为driver ,但是要在 Druid 里面需要改成 driverClassName

经过上面的操作,Mybatis 整合Druid 连接池的操作就完成了,后面对数据库的一系列处理都是基于这个连接池来进行的。

相关推荐
泉-java9 分钟前
第56条:为所有导出的API元素编写文档注释 《Effective Java》
java·开发语言
zfoo-framework36 分钟前
帧同步和状态同步
java
charlotte1024102439 分钟前
高并发:关于在等待学校教务系统选课时的碎碎念
java·运维·网络
亓才孓44 分钟前
[JDBC]PreparedStatement替代Statement
java·数据库
_F_y1 小时前
C++重点知识总结
java·jvm·c++
打工的小王1 小时前
Spring Boot(三)Spring Boot整合SpringMVC
java·spring boot·后端
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 高校体育场馆管理系统为例,包含答辩的问题和答案
java·spring boot
我真会写代码1 小时前
SSM(指南一)---Maven项目管理从入门到精通|高质量实操指南
java·spring·tomcat·maven·ssm
vx_Biye_Design1 小时前
【关注可免费领取源码】房屋出租系统的设计与实现--毕设附源码40805
java·spring boot·spring·spring cloud·servlet·eclipse·课程设计
DN金猿1 小时前
接口路径正确,请求接口却提示404
java·tomcat