IDEA版SSM入门到实战(Maven+MyBatis+Spring+SpringMVC) -Mybatis核心配置详解

第一章 Mybatis核心配置详解【mybatis-config.xml】

1.1 核心配置文件概述
  • MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。
1.2 核心配置文件根标签
  • 没有实际语义,主要作用:所有子标签均需要设置在跟标签内部
1.3 核心配置文件常用子标签
  • properties子标签

    • 作用:定义或引入外部属性文件

    • 示例代码

      properties 复制代码
      #key=value
      db.driver=com.mysql.jdbc.Driver
      db.url=jdbc:mysql://localhost:3306/db220106
      db.username=root
      db.password=root
      xml 复制代码
      <properties resource="db.properties"></properties>
      
      <environments default="development">
              <environment id="development">
                  <transactionManager type="JDBC"/>
                  <dataSource type="POOLED">
      <!--                mysql8版本-->
      <!--                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>-->
      <!--                <property name="url" value="jdbc:mysql://localhost:3306/db220106?serverTimezone=UTC"/>-->
      <!--                mysql5版本-->
                      <property name="driver" value="${db.driver}"/>
                      <property name="url" value="${db.url}"/>
                      <property name="username" value="${db.username}"/>
                      <property name="password" value="${db.password}"/>
                  </dataSource>
              </environment>
          </environments>
  • settings子标签

    • 作用:这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为。

    • mapUnderscoreToCamelCase属性:是否开启驼峰命名自动映射,默认值false,如设置true会自动将

      字段a_col与aCol属性自动映射

      • 注意:只能将字母相同的字段与属性自动映射
  • 类型别名(typeAliases)

    • 作用:类型别名可为 Java 类型设置一个缩写名字。

    • 语法及特点

      xml 复制代码
      <typeAliases>
      <!--        为指定类型定义别名-->
      <!--        <typeAlias type="com.atguigu.mybatis.pojo.Employee" alias="employee"></typeAlias>-->
      <!--        为指定包下所有的类定义别名
                      默认将类名作为别名,不区分大小写【推荐使用小写字母】
      -->
              <package name="com.atguigu.mybatis.pojo"/>
          </typeAliases>
    • Mybatis自定义别名

      别名 类型
      _int int
      integer或int Integer
      string String
      list或arraylist ArrayList
      map或hashmap HashMap
  • 环境配置(environments)

    • 作用:设置数据库连接环境

    • 示例代码

      xml 复制代码
      <!--    设置数据库连接环境-->
          <environments default="development">
              <environment id="development">
                  <transactionManager type="JDBC"/>
                  <dataSource type="POOLED">
      <!--                mysql8版本-->
      <!--                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>-->
      <!--                <property name="url" value="jdbc:mysql://localhost:3306/db220106?serverTimezone=UTC"/>-->
      <!--                mysql5版本-->
                      <property name="driver" value="${db.driver}"/>
                      <property name="url" value="${db.url}"/>
                      <property name="username" value="${db.username}"/>
                      <property name="password" value="${db.password}"/>
                  </dataSource>
              </environment>
          </environments>
  • mappers子标签

    • 作用:设置映射文件路径

    • 示例代码

      xml 复制代码
      <!--    设置映射文件路径-->
          <mappers>
              <mapper resource="mapper/EmployeeMapper.xml"/>
              <!-- 要求:接口的包名与映射文件的包名需要一致-->
      <!--        <package name="com.atguigu.mybatis.mapper"/>-->
          </mappers>
  • 注意:核心配置中的子标签,是有顺序要求的。

相关推荐
程序员张329 分钟前
Maven编译和打包插件
java·spring boot·maven
好奇的菜鸟4 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
DuelCode5 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
荔枝吻8 小时前
【沉浸式解决问题】idea开发中mapper类中突然找不到对应实体类
java·intellij-idea·mybatis
JAVA学习通8 小时前
Mybatis--动态SQL
sql·tomcat·mybatis
代码的余温11 小时前
5种高效解决Maven依赖冲突的方法
java·maven
paishishaba12 小时前
Maven
java·maven
a_Dragon114 小时前
Spring Boot多环境开发-Profiles
java·spring boot·后端·intellij-idea
新world16 小时前
mybatis-plus从入门到入土(二):单元测试
单元测试·log4j·mybatis
RainbowSea20 小时前
问题 1:MyBatis-plus-3.5.9 的分页功能修复
java·spring boot·mybatis