mybatis项目采用mybatis-plus开发,报:Invalid bound statement (not found) 异常,详细解决方案

1、问题说明

原有项目用shiro控制权限,要合并到新项目中,新项目中用到mybatis-plus (官网地址:https://mp.baomidou.com/),合并后项目启动不起来。

报:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)。

官网常见问题中有描述问题解决方案:

描述的比较抽象,弄了半天才解决,记录下,希望对朋友有帮助。

2、解决方案

2.1 包的问题

如下pom文件配置,删除mybatis-spring包和mybatis-plus包,使用:mybatis-plus-boot-starter包。

        <!-- ***************** 手动引入 **************** -->
        <!-- mybatis-spring -->
<!--        <dependency>-->
<!--            <groupId>org.mybatis</groupId>-->
<!--            <artifactId>mybatis-spring</artifactId>-->
<!--            <version>${mybatis-spring.version}</version>-->
<!--        </dependency>-->
        <!-- pagehelper-spring-boot-starter -->
     
<!--        <dependency>-->
<!--            <groupId>com.baomidou</groupId>-->
<!--            <artifactId>mybatis-plus</artifactId>-->
<!--            <version>3.4.2</version>-->
<!--        </dependency>-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.2</version>
        </dependency>

2.2 使用MybatisSqlSessionFactoryBean

就官网解决方案中的使用:MybatisSqlSessionFactoryBean

import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;

@Configuration
public class MybatisPlusConfig {
    @Autowired
    private DataSource dataSource;

    @Bean
    public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean() {
        MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean();
        mybatisPlus.setDataSource(dataSource);
        return mybatisPlus;
    }
}

2.3 其他配置问题

软件老王这边,其他的配置本身就是对的,比如:

(1)启动类上配置MapperScan

@MapperScan({"com.laowang.db.mapper"})

(2)配置文件(property)配置及加载mapper

mybatis-plus.mapper-locations:classpath*:/mapper/*.xml

更多信息请关注公众号:「软件老王」,关注不迷路,软件老王和他的IT朋友们,分享一些他们的技术见解和生活故事。

posted @ 2021-04-04 22:55  软件老王  阅读(10232)  评论(1编辑  收藏  举报