springboot整合mybatisplus踩坑之自定义SQL异常Invalid bound statement (not found)

        最近在研究springboot整合mybatisplus,在进行自定义SQL的研究时遇到了一个坑,在此记录一下,抛出的异常是BindingException,异常的内容是Invalid bound statement (not found)。  

        截图看一下吧:

        哎呀,图片没得了

       

    碰到异常呢,怎么办?总得解决,先是从自身找问题。看看配置,再看看有没有扫描到mapper。但是检查了三四遍,还是没有任何问题。

   之后,锁定了一个问题点,在配置依赖的时候:

        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            1.3.1
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.1.2
        

   上下两种依赖,下面的才是springboot整合mybatisplus的正解,而上边的那个呢?也可以使用mybaitsplus的相关条件构造器等,但是原生SQL不能使用。只能使用自定义的SQL。什么是自定义的SQL。就是在XML中自己写的SQL。

    而下边的依赖,是只能使用原生的SQL,但是自定义的SQL,最终就会抛出异常,也就是Invalid bound statement (not found)。这个异常。思来想去,也没有一个好的解决办法,想了半个小时。最后重新检查了一边配置文件。发现了问题所在。

    在application.yml中的配置出现了问题。

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

其中,mapper-locations应该指定到自己mapperxml所在的包。而我的xml放在mapping下,所以会出现这个异常,因为找不到xml。

总的来说,还是需要细心,细心,再细心。

你可能感兴趣的:(java框架)