Mybatis核心配置文件介绍

1.1 核心配置文件介绍

核心配置文件包含了 MyBatis 最核心的设置和属性信息

如数据库的连接、事务、连接池信息等

XML 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!--MyBatis的DTD约束-->
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">

<!--configuration 核心根标签-->
<configuration>

    <!--environments配置数据库环境,环境可以有多个。default属性指定使用的是哪个-->
    <environments default="mysql">
        <!--environment配置数据库环境  id属性唯一标识-->
        <environment id="mysql">
            <!-- transactionManager事务管理。  type属性,采用JDBC默认的事务-->
            <transactionManager type="JDBC"></transactionManager>
            <!-- dataSource数据源信息   type属性 连接池-->
            <dataSource type="POOLED">
                <!-- property获取数据库连接的配置信息 -->
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql:///db1" />
                <property name="username" value="root" />
                <property name="password" value="root" />
            </dataSource>
        </environment>
    </environments>

    <!-- mappers引入映射配置文件 -->
    <mappers>
        <!-- mapper 引入指定的映射配置文件   resource属性指定映射配置文件的名称 -->
        <mapper resource="IUserDao.xml"/>
    </mappers>
</configuration>

1.2 数据库连接配置文件引入

properties标签引入外部文件

XML 复制代码
 <!--引入数据库连接的配置文件-->
    <properties resource="jdbc.properties"/>
  • 具体使用,如下配置
XML 复制代码
<!-- property获取数据库连接的配置信息 -->
    <property name="driver" value="${driver}" />
    <property name="url" value="${url}" />
    <property name="username" value="${username}" />
    <property name="password" value="${password}" />
​

1.3 起别名

  • <typeAliases>:为全类名起别名的父标签。

  • <typeAlias>:为全类名起别名的子标签。

  • 属性 type:指定全类名 alias:指定别名

  • <package>:为指定包下所有类起别名的子标签。(别名就是类名)

如下图:

具体如下配置

XML 复制代码
  <!--起别名-->
    <typeAliases>
        <typeAlias type="com.by.pojo.User" alias="user"/>
        <!--<package name="com.by.pojo"/>-->
    </typeAliase>

1.4 总结

Mybatis传统方式开发

Dao 层传统实现方式

  • 分层思想:控制层(controller)、业务层(service)、持久层(dao)。

  • 调用流程

LogBack的配置和使用

  • 在日常开发过程中,排查问题时难免需要输出 MyBatis 真正执行的 SQL 语句、参数、结果等信息,我们就可以借助 LogBack 的功能来实现执行信息的输出。

  • 使用步骤:添加logback.xml配置

XML 复制代码
<?xml version="1.0"?>
<configuration>
    <!--定义日志文件的存储地址 logs为当前项目的logs目录 还可以设置为../logs -->
    <property name="LOG_HOME" value="logs" />
    <!-- ch.qos.logback.core.ConsoleAppender 控制台输出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 日志级别 -->
    <root>
        <level value="off" />
        <appender-ref ref="STDOUT" />
    </root>
    <logger name="cn" level="DEBUG"/>
</configuration>

pom导入:

XML 复制代码
<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-classic</artifactId>
  <version>1.2.3</version>
</dependency>

<dependency>
      <groupId>org.logback-extensions</groupId>
      <artifactId>logback-ext-spring</artifactId>
      <version>0.1.5</version>
 </dependency>

<dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.26</version>
    </dependency>

<!--SLF4J转化包 可以打印spring框架的日志-->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>jcl-over-slf4j</artifactId>
    <version>1.7.25</version>
</dependency>
相关推荐
wljt10 小时前
公司二-面试题
java·开发语言·mybatis
VimorphTech13 小时前
文本已经改了,旧的音频生成结果还能回写吗?
java·数据库·mybatis
麻瓜code17 小时前
双写一致性:为什么是“删缓存“,而不是“改缓存“
java·缓存·mybatis
郭小李2 天前
mybatis 动态 sql
java·sql·mybatis
知守观2 天前
技术考古:iBATIS 2.3.4 时代的持久层,是如何用 Map 玩转 307 个存储过程的?
java·后端·mybatis
captain3762 天前
MyBatis Plus(1)
java·服务器·mybatis
代码不停2 天前
MyBatis进阶
spring boot·mybatis
captain3762 天前
MyBatis(入门5)其他查询操作
java·数据库·spring boot·mybatis
captain3762 天前
MyBatis(进阶1)
mybatis
郭小李3 天前
mybatis的 Mapper.xml语法
xml·java·mybatis