Mybatis-SqlMapConfig.xml配置

SqlMapConfig.xml主要负责配置数据库的连接信息,以及加载mapper.xml。

Properties

在配置数据库连接信息时,可采用Properties配置文件的方式进行相关信息的配置并加载,

这样只需要在SqlMapConfig.xml中加载properties文件包含的属性值,在SqlMapConfig.xml中就不需要对数据库连接参数硬编码。

同时也方便对参数进行统一管理,其它xml亦可引用该properties配置文件。

相关代码如下:

db.properties文件:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=passwd
SqlMapConfig.xml配置文件:

	
	
	
	
	
	
	
	
	
		
	

注意: MyBatis 将按照下面的顺序来加载属性:

1、properties元素体内定义的属性首先被读取。

2、其次读取properties 元素中resource或url加载的属性,其会覆盖已读取的同名属性

3、最后读取parameterType传递的属性,其亦会覆盖已经读取的同名属性

建议:

不要在properties元素体内添加任何属性值,只将属性值定义在properties文件中。

在properties文件中定义属性名要有一定的特殊性。


settings配置

mybatis框架在运行时可以调整一些运行参数。

比如:开启二级缓存、开启延迟加载,全局参数将会影响mybatis的运行行为。

具体设置信息如下所示:

Mybatis-SqlMapConfig.xml配置_第1张图片Mybatis-SqlMapConfig.xml配置_第2张图片Mybatis-SqlMapConfig.xml配置_第3张图片

表格下载:下载


TypeAliase(类型别名)

在Mybatis中,我们可以为数据类型指定一些别名,继而简化我们的开发,同时,也可以为协同开发做出一定的规则,减少了代码的错误量以及整合速度。

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


自定义别名

除了Mybatis自身支持的一些数据类型别名外,我们还可以自定义一些简单易用的别名供我们使用。

自定义别名,则需要在SqlMapConfig.xml配置文件中进行相关的配置,如下所示:




<-- 单个别名定义 --> 

 




其中,我们可以进行单个别名定义,如下:


表示将com.sw.User定义为user,在使用时,我们只需要填写user即可。
同时,亦可进行批量别名定义,如下:

如上则表示将com.sw.po包下所有的po类名称定义为其类名。

例如:com.sw.po下有User类,则其别名即为User或者user.....
注:在这里,user并不区分大小写,大小写均可进行配置。


typeHandler(类型处理器)

类型处理器用于java类型与jdbc类型的映射,如下所示:


parameterType则表示输入类型,即与数据库表字段的相关映射。

在Mybatis中,Mybatis自带了一些类型处理器,已经基本可以满足我们的开发需求,故一般不用自定义。

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-任何兼容的字符串类型,作为代码存储(而不是索引)。


Mappers(映射器)

mappers映射器主要用于加载相关的mapper.xml配置文件。



	
	
	
   
	 
	 
   
	  
	  
	   

如上所示,一般的我们可以使用以上三种方法进行加载mapper.xml配置文件的工作。

但是我们知道,在实际开发时,有的时候,我们会将Mapper.xml配置文件放置于服务器某个磁盘中,

故而,我们可以使用的方式进行加载,其url表示mapper.xml的路径,例如:


到这里,关于SqlMapConfig.xml的基本常用配置就讲解完了,在之后有增加的地方会接着修改,有错误的地方,请指教。

你可能感兴趣的:(Jave,EE,Java,ee/se)