组团学

MyBatis-连接池

阅读 (838343)

1、MyBatis连接池概述

在 Mybatis 中也有连接池技术,但是它采用的是自 己的连接池技术。在Mybatis的SqlMapConfig.xml配置文件中,通过来实现 Mybatis 中连接池的配置。

2、MyBatis连接池分类

在 MyBatis 中我们将它的数据源 dataSource 分为以下几类:

image20200325155835934.png

UNPOOLED 不使用连接池的数据源

POOLED 使用连接池的数据源

JNDI 使用 JNDI 实现的数据源

具体结构如下:

image20200325155858488.png

我们常见的数据源组件都实现了 Javax.sql.DataSource 接口,Mybatis 也实现该接口并且提供了两个实现类 UnpooledDataSource 和 PooledDataSource 一个使用连接池,一个不使用连接池,此外,对于这两个类,Mybatis 还提供了两个工厂类进行创建对象,是工厂方法模式的一个应用,首先来看下它们的一个类图:

image20200325155922838.png

3、MyBatis中数据源配置

<dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </dataSource>

MyBatis 在初始化时,根据的 type 属性来创建相应类型的的数据源 DataSource,即:

type=”POOLED”:MyBatis 会创建 PooledDataSource 实例
type=”UNPOOLED” : MyBatis 会创建 UnpooledDataSource 实例
type=”JNDI”:MyBatis 会从 JNDI 服务上查找 DataSource 实例,然后返回使用

需要 登录 才可以提问哦