SpringBoot集成MyBatis

SpringBoot集成MyBatis

在项目的pom.xml文件中加入依赖

    <!--集成MyBatis-->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>${mybatis_spring.version}</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>

在resource目录下创建mybatis目录,创建mybatis-config.xml文件,内容如下

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
</configuration>

在resource/mybatis目录下创建mapper目录,并将Entity的mapper文件放在这里
比如User.java是个Entity,那么需要这样放置mapper文件:resource/mybatis/mapper/user/UserMapper.xml

在application.properties文件中添加MyBatis配置

############# MyBatis配置 ############
mybatis.config-location=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath*:mybatis/mapper/**/*.xml

为了配置多数据源,SpringBoot取消的sqlSessionFactory的自动注入功能,所以在BaseDaoImpl中添加如下内容:

public class BaseDaoImpl extends SqlSessionDaoSupport {

    @Autowired
    public void setSqlSessionFactory(SqlSessionFactory sqlSessionFactory) {
        super.setSqlSessionFactory(sqlSessionFactory);
    }
}

其他的Dao实现类继承这个BaseDaoImpl就可以用this.getSqlSession()获取sqlsession了

原文地址:https://www.cnblogs.com/yhongyin/p/11117838.html