码迷,mamicode.com
首页 > 其他好文 > 详细

4.主配置文件详解

时间:2017-08-23 19:14:18      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:别名   hash   package   namespace   collect   ace   blog   jdb   byte   

主配置文件名可以随意命名,其主要完成以下几个功能:

  1.注册存放DB连接的四要素的属性文件

  2.注册实体类的全限定性类名的别名

  3.配置MyBatis运行环境,即数据源与事务管理器

  4.注册映射文件

 

1  注册 DB 连接四要素属性文件

技术分享

 

F2 查看其父标签<configuration/>的描述信息可知,<properties/>子标签应该是第一个子 标签。

2 指定实体类全限定性类名的别名

基本类型: 

别名

类型

 

别名

类型

_int

int

 

_integer

int

_short

short

 

_long

long

_double

double

 

_float

float

_byte

byte

 

_boolean

boolean

 

常用包装类型:

别名

类型

 

别名

类型

string

String

 

byte

Byte

long

Long

 

short

Short

int

Integer

 

integer

Integer

double

Double

 

float

Float

boolean

Boolean

 

date

Date

object

Object

 

collection

Collection

list

List

 

arraylist

ArrayList

map

Map

 

hashmap

HashMap

iterator

Iterator

 

 

 

 

<environment/> id 属性为当前定义的运行环境的名称,可以任意命名。该名称会作为<environments/>的 default 属性的值出现。

 

3  配置 MyBatis 的运行环境

  配置 MyBatis 的运行环境,主要是配置数据源与事务管理器

A <environments/>标签

在<environments/>中可以包含多个运行环境<environment/>,但其 default 属性指定了当前 MyBatis 运行时所选择使用的环境。

 

B、 <transactionManager/>标签

 技术分享

 

 

该标签用于指定 MyBatis 所使用的事务管理器。MyBatis 支持两种事务管理器类型:JDBC 与 MANAGED。

1.JDBC:使用 JDBC 的事务管理机制。即,通过 Connection 的 commit()方法提交,通过 rollback()方法回滚。

但默认情况下,MyBatis 将自动提交功能关闭了,改为了手动提交 即程序中需要显式的对事务进行提交或回滚。从日志的输出信息中可以看到

 技术分享

2.MANAGED:由容器来管理事务的整个生命周期(如 Spring 容器

 

 

 

C <dataSource/>标签

 

该标签用于配置 MyBatis 使用的数据源类型与数据库连接基本属性。常见有类型有:

UNPOOLED、POOLED、JDNI 等。

? UNPOOLED  :不使用连接池。即每次请求,都会为其创建一个 DB 连接,使用完毕 后,会马上将此连接关闭。

? POOLED:使用数据库连接池来维护连接。

? JNDI:数据源可以定义到应用的外部,通过 JNDI 容器获取数据库连接。

 

 技术分享

 

若要从属性文件中读取 DB 连接四要素信息,则使用如下方式:

 技术分享

  

 

A <mapper resource=””/>指定映射文件

  若映射文件只有一个,则可直接使用如下形式:

  技术分享

 

B <mapper url=””/>指定映射文件(了解)

该方式的好处是,可以将映射文件放在本地或网络的任意位置,通过其 url 地址即可直接访问。但通常映射文件是存放在当前应用中的,所以该方式不常用。 

 技术分享

 

 

C <mapper class=””/>指定映射文件

class 属性值为 Dao 接口的全类名

 技术分享

 

该方式的使用,需要满足以下几个要求:

(1)映射文件名要与 Dao 接口名称相同

(2)映射文件要与接口在同一包中

(3)映射文件中<mapper/>的 namespace 属性值为 Dao 接口的全类名

 

D <package name=””/>指定映射文件

当映射文件较多时,也可以使用如下形式。其中 package 的 name 属性指定映射文件所 存放的包。

 

 技术分享

 

但,这种方式的使用需要满足以下几个条件:

(1)dao 使用 mapper 动态代理实现(后面讲)

(2)映射文件名要与 Dao 接口名称相同

(3)映射文件要与接口在同一包中

(4)映射文件中<mapper/>的 namespace 属性值为 Dao 接口的全类

4.主配置文件详解

标签:别名   hash   package   namespace   collect   ace   blog   jdb   byte   

原文地址:http://www.cnblogs.com/xuzekun/p/7419479.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!