Mybatis 配置优化

核心配置文件

  • mybatis-config.xml
  • MyBatis的配置文件包含了会深深影响MyBatis运行的设置和属性信息
configuration(配置)
properties(属性)
settings(设置)
typeAliases(类型别名)
typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins(插件)
environments(环境配置)
environment(环境变量)
transactionManager(事务管理器)
dataSource(数据源)
databaseIdProvider(数据库厂商标识)
mappers(映射器)

环境配置(environments)

Mybatis可以配置成适应多种环境
不过要记住,尽管可以配置多个环境,但每个sqlsessionFactory实例只能选择一种环境
学会使用配置多套运行环境!
MyBatis默认的事务管理器就是JDBC,连接池:pooled

属性(properties)

我们可以通过properties属性来实现引用配置文件。
这些属性可以在外部进行配置,并可以进行动态替换。你既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置。(db.properites文件)
编写一个数据库配置文件
db.properties

properties文件中各个字段顺序有规定

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF-8
username=root
password=123456

在核心配置文件中引入

    <!--引入外部配置文件-->
    <properties resource="db.properties">
        <property name="username" value="root"/>
    </properties>
  • 可以直接引入外部文件
  • 可以在其中增加一些属性配置
  • 如果两个文件有同一个字段,优先使用外部配置文件中属性

类型别名(typeAliases)

    <typeAliases>
        <typeAlias type="com.ultraBlast.pojo.User" alias="User"></typeAlias>
        <package name="com.ultraBlast.pojo"/>
    </typeAliases>
  • 类型别名是为Java类型设置的一个短的名字
  • 存在的意义仅在于用来减少类完全限定名的冗余
  • 也可以指定一个包名,MyBatis,会在包名的目录下搜索需要的JavaBean,扫描实体类的包,他的默认别名就为这个类的类名,首字母建议小写。
    在实体类较少的时候使用第一种方式,如果包目录下实体类较多,建议使用第二种
    第一种可以diy别名,第二种则不行,如果非要在第二种修改别名,需要在实体类上增加注解
    对于基本类型和包装器类型有默认的别名

设置(settings)




其他配置

typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins(插件)

  • mybatis-generator-core
  • mybatis-plus
  • 通用mapper

映射器(mappers)

MapperRegistry:注册绑定我们的Mapper文件
方式一:

    <mappers>
        <mapper resource="com/ultraBlast/dao/UserMapper.xml"></mapper>
    </mappers>

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

    <mappers>
        <!--<mapper resource="com/ultraBlast/dao/UserMapper.xml"></mapper>-->
        <mapper class="com.ultraBlast.dao.UserMapper"></mapper>
    </mappers>

注意点:

  • 接口和他的mapper配置文件必须同名
  • 接口和他的配置文件必须在同一个包下
posted @ 2021-03-01 17:25  UltraBlast  阅读(150)  评论(0)    收藏  举报