在自己编写的微服务项目中,使用Maven管理项目,使用Mybatis-plus和数据库交互时,一般情况,没有什么特别复杂的sql语句,就不需要在mapper接口中定义方法然后再在对应的mapper.xml中编写sql语句操作数据库,但是我在项目中的一个mapper接口中定义了方法,在对应的mapper.xml文件中编写了数据库语句,一切写好后启动项目,结果报错Invalid bound statement (not found): com.lkq.aclservice.mapper.PermissionMapper.selectAllPermission
显示找不到自己写的mapper接口中的方法
原因:由于maven加载机制造成的,启动项目会自动调用生成的mapper中的方法,而不会调用自己系的xml文件;
所以自己添加配置让项目启动时,加载自己编写的mapper接口中的方法
解决方法:(最常用第三种)
1>在idea中运行项目会出现target目录,这是编译后的项目文件,复制xml文件到target目录中
2>将所有的xml文件复制到resource文件夹下
3>使用配置文件
首先在pom.xml文件中添加
然后在配置文件application.properties/.yml
然后启动项目即可