Mybatis——Confiuration

Confiuration就是mybatis的配置文件,其结果如下:

properties(属性)

settings(全局配置参数)

typeAliases(类型别名)

typeHandlers(类型处理器)

objectFactory(对象工厂)

plugins(插件)

environments(环境集合属性对象)

    environment(环境子属性对象)

         transactionManager(事务管理)

         dataSource(数据源)

mappers(映射器)

在写Confiuration文件时,很重要的一点就是配置顺序要按照上面的结构,不能调换顺序!


一、properties

就像普通的外部数据库信息的使用db.properties

jdbc.url=XXX
jdbc.username=xxx

文件中的引用:

<properties resource="db.properties"/>

需要注意的是 parameterType传递的属性具有最高优先级, resource url 加载的属性次之,最低优先级的是 properties 元素体内定义的属性。


二、settings

mybatis的全局信息配置,网上有很多翻译过来的图


    <settings>   
    <setting name="cacheEnabled" value="true"/>   
    <setting name="lazyLoadingEnabled" value="true"/>   
    </settings>  

三、typeAliases

在xml文件中parameterType和resultType输入自己定义的POJO类型时需要输入的是全类名

<select id="findUserByUsername" parameterType="java.lang.String"  resultType="com.ydalien.po.User">

当定义了别名后可以使用别名,如:

单个别名的定义

<typeAliases>
	<typeAlias alias="User" type="com.ydalien.po.User"/>
</typeAliases>

批量定义别名(别名为类名,首字母大小写皆可)

<typeAliases>
	<package name="com.ydalien.po"/>
</typeAliases>

定义后我们就可以改成

<select id="findUserByUsername" parameterType="java.lang.String"  resultType="User">

mybatis默认会支持的别名(无需自定义)

别名

映射的类型

_byte

byte

_long

long

_short

short

_int

int

_integer

int

_double

double

_float

float

_boolean

boolean

string

String

byte

Byte

long

Long

short

Short

int

Integer

integer

Integer

double

Double

float

Float

boolean

Boolean

date

Date

decimal

BigDecimal

bigdecimal

BigDecimal

 

四、typeHandlers

用来处理java类型和jdbc的类型。

mybatis默认支持类型处理器:

 

类型处理器

Java类型

JDBC类型

BooleanTypeHandler

Booleanboolean

任何兼容的布尔值

ByteTypeHandler

Bytebyte

任何兼容的数字或字节类型

ShortTypeHandler

Shortshort

任何兼容的数字或短整型

IntegerTypeHandler

Integerint

任何兼容的数字和整型

LongTypeHandler

Longlong

任何兼容的数字或长整型

FloatTypeHandler

Floatfloat

任何兼容的数字或单精度浮点型

DoubleTypeHandler

Doubledouble

任何兼容的数字或双精度浮点型

BigDecimalTypeHandler

BigDecimal

任何兼容的数字或十进制小数类型

StringTypeHandler

String

CHARVARCHAR类型

ClobTypeHandler

String

CLOBLONGVARCHAR类型

NStringTypeHandler

String

NVARCHARNCHAR类型

NClobTypeHandler

String

NCLOB类型

ByteArrayTypeHandler

byte[]

任何兼容的字节流类型

BlobTypeHandler

byte[]

BLOBLONGVARBINARY类型

DateTypeHandler

Datejava.util

TIMESTAMP类型

DateOnlyTypeHandler

Datejava.util

DATE类型

TimeOnlyTypeHandler

Datejava.util

TIME类型

SqlTimestampTypeHandler

Timestampjava.sql

TIMESTAMP类型

SqlDateTypeHandler

Datejava.sql

DATE类型

SqlTimeTypeHandler

Timejava.sql

TIME类型

ObjectTypeHandler

任意

其他或未指定类型

EnumTypeHandler

Enumeration类型

VARCHAR-任何兼容的字符串类型,作为代码存储(而不是索引)。


当然还能自己定义(略)


五、objectFactory(略)

六、plugins(略)

七、environments

environments里可以配置多个environment,每个environment对应一个数据库环境。

<environments default="development">
		<environment id="development">
		<!-- 使用jdbc事务管理-->
			<transactionManager type="JDBC" />
		<!-- 数据库连接池-->
			<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>
		</environment>
	</environments>

八、mappers

Mappers用于告诉Mybatis去哪里寻找映射文件。

	<!-- 加载映射文件 -->
	<mappers>
		<package name="com.ydalien.mapper"/>
	</mappers>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值