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

相关推荐
jianjinwssy16 小时前
MyBatis-Plus 从入门到实战:常用功能与核心原理
java·mybatis
ss27317 小时前
AI全栈实战 | 3.6-01 数据库与 ORM:学过 MyBatis 再看 SQLAlchemy,才知道“半自动“和“全自动“差在哪
数据库·mybatis
MandalaO_O1 天前
IDEA 开发(快捷键 + 调试 + 序列化)
java·ide·intellij-idea
砚底藏山河1 天前
量化实战:截面因子有效性检验(IC 分析与分层回测)
java·python·金融·maven
java、iOS、Vue1 天前
Maven antrun vs Jenkins 脚本组装 deb的优缺点、适用场景
java·jenkins·maven
开开心心就好2 天前
视频压缩工具推荐,绿色版免安装双击即用
java·前端·人工智能·spring·智能手机·intellij-idea·excel
砚底藏山河2 天前
量化实战:回测数据底座快照与版本管理进阶
java·大数据·python·金融·maven
CarIise3 天前
IDEA与Maven基础课堂笔记
java·intellij-idea·caffe
golang学习记4 天前
Jetbrains 正式官宣:全新AI IDE正式发布!
ide·人工智能·intellij-idea·air
砚底藏山河4 天前
量化实战:行情数据 Schema 演进与向后兼容
java·python·金融·maven