mybatis-config.xml-配置文件详解

  |   0 评论   |   0 浏览

mybatis-config.xml-配置文件详解

1.说明

  1. mybatis 的核心配置文件(mybatis-config.xml),比如配置 jdbc 连接信息,注册 mapper 等等,我们需要对这个配置文件有详细的了解
  2. 文档地址: https://mybatis.org/mybatis-3/zh/configuration.html

image-20220703150717218

2.properties 属性

● 通过该属性,可以指定一个外部的 jdbc.properties 文件,引入我们的 jdbc 连接信息

1.创建src\main\resources\jdbc.properties

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

2.修改 mybatis-confing.xml

<!--引入外部配置文件-->
    <properties resource="jdbc.properties"/>  
	<environments default="development">
        <environment id="development">
            <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>
  1. 修改父项目的 pom.xml(如果已经配置了*.properties 就不用再配置) 并完成测试
<!--在build中配置resources,来防止我们资源导出失败的问题
       1. 不同的idea/maven 可能提示的错误不一样
       2. 不变应万变,少什么文件,就增加相应配置即可
       3. 含义是将 src/main/java目录和子目录 和 src/main/resources目录和子目录
       的资源文件 xml 和 properties在build项目时,导出到对应的target目录下
   -->
<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/**/*.xml</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.xml</include>
                <include>**/*.properties</include>
            </includes>
        </resource>
    </resources>
</build>

3.settings 全局参数定义

  1. 具体看手册
  2. settings 列表,通常使用默认
<!--配置MyBatis自带的日志输出-查看原生的sql-->
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

https://mybatis.org/mybatis-3/zh/configuration.html#settings

image-20220703150902894

4.typeAliases 别名处理器

  1. 别名是为 Java 类型命名一个短名字。它只和 XML 配置有关,用来减少类名重复的部分
  2. 如果指定了别名,我们的 MappperXxxx.xml 文件就可以做相应的简化处理
  3. 注意指定别名后,还是可以使用全名的
  4. 举例说明

1.修改mybatis-config.xml

<!--配置别名-->
<typeAliases>
    <!--<typeAlias type="com.llp.entity.Monster" alias="Monster"/>-->
    <!--
       如果一个包下有很多的类,我们可以直接引入包,这样
       该包下面的所有类名,可以直接使用
   -->
    <package name="com.llp.entity"/>
</typeAliases>

5.typeHandlers 类型处理器

  1. 用于 java 类型和 jdbc 类型映射
  2. Mybatis 的映射基本已经满足,不太需要重新定义
  3. 这个我们使用默认即可,也就是 mybatis 会自动的将 java 和 jdbc 类型进行转换
  4. java 类 型 和 jdbc 类 型 映 射 关 系 一 览 [ 手 册 ] https://mybatis.org/mybatis-3/zh/configuration.html#typeHandlers

6.environments 环境

  1. resource 注册 Mapper 文件: XXXMapper.xml 文件(常用,使用过)
  2. class:接口注解实现(使用过)
  3. url:外部路径,使用很少,不推荐<mapper url="file:///D:\yy\kk\yy\MOnsterMapper.xml" />
  4. package 方式注册 :<package name="com.llp.mapper"/>并测试
<!--
 1. 当一个包下有很多的Mapper.xml文件和基于注解实现的接口时,为了方便,我们可以以包方式进行注册
 2. 将下面的所有xml文件和注解接口 都进行注册
 3.需要注意的是这种方式需要mapper包下包含 接口 和 xml配置文件 (即MonsterMapper.java、MonsterMapper.xml在同一个包下)
  -->
<package name="com.llp.mapper"/>

标题:mybatis-config.xml-配置文件详解
作者:llp
地址:https://llinp.cn/articles/2022/07/03/1656838229350.html