今天在学习使用springboot 整合 mybatis时遇到的坑

  在学习使用springboot时,并不是太了解mybatis以及mybatis-plus之间的关系和概念,导致出现了一堆bug。

  首先在使用mybatis时,pom依赖忘记依赖mybatis,导致在接口调试时报"message": "Invalid bound statement (not found): com.hxsoft.geoserver.mapper.ExportOutPutMapper.findById",


    org.mybatis
    mybatis
    3.5.5

  添加好了之后就可以正常调用接口了。

  这里再补充下今天为了解决bug找到的各种解决方法:

1.检查xml文件所在package名称是否和Mapper interface所在的包名

2.UserDao的方法在UserDao.xml中没有,然后执行UserDao的方法会报此

3. UserDao的方法返回值是List,而select元素没有正确配置ResultMap,或者只配置ResultType!

4. 如果你确认没有以上问题,请任意修改下对应的xml文件,比如删除一个空行,保存.问题解决

5.看下mapper的XML配置路径是否正确

 接下来到了使用mybatis-plus,这里最大的坑是在yml里边配置的mybatis,因为一开始是使用mybatis,所以没有问题

mybatis:
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: com.hxsoft.geoserver.entity

但是等到去使用mybatis-plus时候,就忽略了yml里边的配置问题,使用mybatis-plus需要再修改yml里的配置才能使用,如下

mybatis-plus:
  mapper-locations: classpath:mappers/*.xml
  type-aliases-package: com.hxsoft.geoserver.entity

 如果不进行修改,直接调用mybatis-plus中的方法,也会报和上面相同错误。

你可能感兴趣的:(今天在学习使用springboot 整合 mybatis时遇到的坑)