【MyBatis笔记】3-核⼼配置⽂件参数详解
⽂章⽬录
1、environment:设置数据库环境
1. <environments/>⽤于设置连接数据库的环境
2. 可以有很多个<environment/>,但只能⽤其中⼀个作为项⽬的数据库连接,这个连接的id需要卸载<environments/>的default参数中。<!--设置连接数据库的环境-->
<environments default="development">
<!--每⼀个environment都是具体连接数据库的环境-->
<!--
⼀个项⽬中只会⽤⼀个环境,default⽤于使⽤默认使⽤的环境:
id:表⽰连接数据库的环境的唯⼀标识不能重复
-->
<environment id="development">
2、transactionManager:设置事务管理⽅式
属性:type="JDBC/MANAGED"
JDBC: 在当前环境中,执⾏sql时,使⽤的是jdbc原⽣的事务管理⽅式,需要⼿动的提交和回滚事务
MANAGED:被管理,例如Spring
<transactionManager type="JDBC"/>
3、${} + properties:动态写⼊信息
如果想动态地写数据库驱动的信息,可以新建⼀个配置⽂件(jdbc.properties),⽂件类型为resource bundle。
(1)在jdbc.properties⽂件中,以字符串形式定义各个属性。
⚠ 每个属性最好以有意义的标识作前缀,如。
(2)在l⽂件中,添加<properties>元素,将资源⽂件引⼊配置⽂件。
<properties resource="jdbc.properties"></properties>
(3)在dataSource中,使⽤${xxx}格式,引⼊对应的属性
<!-- dataSource:配置数据源
属性"
type:设置数据源的类型
type="POOLED/UNPOOLED/JNDI"
POOLED:表⽰使⽤数据库连接池缓存数据库连接
UNPOOLED:表⽰不实⽤数据库连接池
JNDI:表⽰使⽤上下⽂中的数据源
-->
<dataSource type="POOLED">
<!--设置连接数据库的驱动-->
<property name="driver"value="${jdbc.driver}"/>
<!--设置连接地址-->
<property name="url"
value="${jdbc.url}"/>
<!--⽤户名和密码-->
<property name="urname"value="${jdbc.urname}"/>
<property name="password"value="${jdbc.password}"/>
</dataSource>
4、typeAlias/package:设置某个类型的别名
tres
typeAlias属性:
皮肤增白type: 设置需要设置别名的类型
alias: 设置某个类型的别名,如果不设置该属性,那么该类型拥有默认的类名,且不区分⼤⼩写
<typeAlias>
<typeAlias type="batis.pojo.Ur"alias="Ur"></typeAlias>
</typeAlias>
即,使⽤Ur作为batis.pojo.Ur的别名,可以在mapper的配置⽂件中直接使⽤Ur来代表这个类。
mba资料
也可以使⽤<package>来表⽰,以该包为单位,将包下所有的类型设置默认的类型别名且不区分⼤⼩写。
<typeAlias>
<!-- 以包为单位,将包下所有的类型设置默认的类型别名且不区分⼤⼩写-->
<package name="batis.pojo"/>
</typeAlias>
5、mappers:引⼊映射⽂件
以包为单位引⼊映射⽂件,要求:
1。 mapper接⼝所在的包要和映射⽂件所在的包⼀致
2。 mapper接⼝要和映射⽂件的名字⼀致
⚠ batis.mapper创建包时要⽤/分隔(new package时,名称要写成com/atguigu/mybatis/mapper),这样才是⽬录,否则这整⼀个就只是⽂件夹名字⽽已,就不能正确映射,会报错:BindingException: Type interface batis.mapper.UrMapper is not known to the MapperRegistry.。
<!--引⼊映射⽂件-->英文字母26个发音及读法
<mappers>
<!-- <mapper resource="l"/>-->
<package name="batis.mapper"/>
</mappers>
配置⽂件注释汇总
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-////DTD Config 3.0//EN"
"/dtd/mybatis-3-config.dtd">
<configuration>
<!-- MyBatis核⼼配置⽂件,标签的顺序
properties?,ttings?,typeAlias?,typeHandlers?,
objectFactory?,objectWrapperFactory?,reflectorFactory?,
薪资管理制度
plugins?,environments?,databaIdProvider?,mappers?-->
<properties resource="jdbc.properties"></properties>
<!-- 设置类型别名,⼤⼩写不敏感。
如果不设置alias,则默认为类名(⼤⼩写不敏感)-->
<typeAlias>
<!--
typeAlias: 设置某个类型的别名
属性:
type 设置需要设置别名的类型
alias 设置某个类型的别名,如果不设置该属性,那么该类型拥有默认的类名,且不区分⼤⼩写
-->
<typeAlias type="batis.pojo.Ur"alias="Ur"></typeAlias>
<!-- 以包为单位,将包下所有的类型设置默认的类型别名且不区分⼤⼩写-->
<package name="batis.pojo"/>
</typeAlias>
好老师cng<!--设置连接数据库的环境--><environments default="development">
<!--每⼀个environment都是具体连接数据库的环境-->
<!--
⼀个项⽬中只会⽤⼀个环境,default⽤于使⽤默认使⽤的环境:
id:表⽰连接数据库的环境的唯⼀标识不能重复
-->
<environment id="development">
<!--
transactionmanager:设置事务管理⽅式
属性:
type="JDBC/MANAGED"
JDBC: 在当前环境中,执⾏sql时,使⽤的时jdbc原声的事务管理⽅式,需要⼿动的提交和回滚事务
MANAGED:被管理,例如Spring
-->
<transactionManager type="JDBC"/>manny
<!-- dataSource:配置数据源
属性"
type:设置数据源的类型
会计进修学院
type=""
POOLED:表⽰使⽤数据库连接池缓存数据库连接
UNPOOLED:表⽰不实⽤数据库连接池
UNPOOLED:表⽰不实⽤数据库连接池
JNDI:表⽰使⽤上下⽂中的数据源
-->讲座开场白
<dataSource type="POOLED">
<!--设置连接数据库的驱动-->
<property name="driver"value="${jdbc.driver}"/>
<!--设置连接地址-->
<property name="url"
value="${jdbc.url}"/>
<!--⽤户名和密码-->
<property name="urname"value="${jdbc.urname}"/>
<property name="password"value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<!--引⼊映射⽂件-->
<mappers>
<!-- <mapper resource="l"/>-->
<!-- BindingException: Type interface batis.mapper.UrMapper is not known to the MapperRegistry.
没有成功建⽴映射关系
以包为单位引⼊映射⽂件,要求:
1。 mapper接⼝所在的包要和映射⽂件所在的包⼀致
2。 mapper接⼝要和映射⽂件的名字⼀致-->
<!-- batis.mapper创建包时要⽤/分隔,这样才是⽬录,否则这整⼀个就只是⽂件夹名字⽽已--> <package name="batis.mapper"/>
</mappers>
</configuration>