Home Tags Posts tagged with "mybatis-config"

mybatis-config

0 15

Mybatis配置解析(对mybatis-config.xml的解析)

属性优化

1.核心配置文件

mybatis-config.xml

<environment>多套环境,但每个SqlSessionFactory实例只能选择一种环境

两种事务管理器

数据源:连接数据库

连接池,默认是poolen,web相应更快;

属性:properties,我们可以通过它来实现引用配置文件,db.propreties

driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/mysql?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username=root
password=123456789

在核心配置中引入,必须遵守标签顺序

结论:

1.可以直接引入外部文件

2.可以在其中增加一些属性配置

3.如果两个文件有同一个字段,优先使用外部配置文件的

 

别名优化

UserMapper文件中返回值需要写全限定名,太长不舒服,起别名改短;

方法1.:在mybatis-config文件中使用<typeAliases>标签

方法2.扫描包(可与注解配合)

 

使用情况:

在实体类比较少的时候,使用第一种方式

在实体类较多的时候,使用第二种

第一个可以DIY别名,第二种不行,如果非要改,需要在实体上增加注解

默认别名:有_代表基本数据类型,无_代表包装类型

 

设置(setting)

这是最为重要的内容

开启缓存

懒加载

开启自动驼峰命名规则

指定MyBatis所有日志的具体实现

映射器(mappers)

MapperRegistry:注册绑定我们的Mapper文件()

以后我们每写一个Dao层,都会写一个Mapper文件,跟实现类一样;

方法一:resource 推荐使用

方法二:使用class文件绑定注册

方法三:使用扫描包进行注入绑定

注意点:

1.接口和他的Mapper配置文件必须同名

2.接口和他的Mapper配置文件必须在同一个包下(方法二,方法三)

练习:

  • 将数据库配置文件外部引入
  • 实体类起别名
  • 保证UserMapper.xml和UserMapper接口名字一致并且必须放在同一个包下