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>
  • 注意:核心配置中的子标签,是有顺序要求的。

相关推荐
小宇宙Zz8 天前
Maven依赖冲突
java·服务器·maven
摇滚侠8 天前
IDEA 创建 Java 项目 手动整合 SSM 框架
java·ide·intellij-idea
敲个大西瓜8 天前
mybatis拦截器插件实现数据库字段加解密
mybatis
砚底藏山河8 天前
沪深A股:如何获取基金持股数据
java·python·数据分析·maven
一勺菠萝丶8 天前
Maven SNAPSHOT 父 POM 无法解析问题排查
java·maven
摇滚侠8 天前
SpringMVC 入门到实战 RESTFul 49-55
java·开发语言·后端·spring·intellij-idea·restful
我登哥MVP8 天前
SpringCloud Alibaba 核心组件解析:服务链路追踪
java·spring boot·后端·spring·spring cloud·java-ee·maven
武子康8 天前
Java-28 深入浅出 Spring 实现简易Ioc-04 在上节的业务下手动实现AOP
java·后端·mybatis
南部余额8 天前
Maven Archetype 项目模板
java·maven·项目·archetype