SpringBoot项目在可以使用Java入口正常类运行,但是通过运行Maven命令启动或者是进行其他操作时,例如使用Maven命令打包项目时,会自动删除自定义的DAO中的方法,xxxMapper是通过mybatis generator自动生成的,mapper中方法如图所示:
selectByUsername方法是自定义的,在UserMaper.xml文件中也进行了查询语句的定义,但是一通过Maven命令运行项目或者项目打包时,selectByUsername就会被自动删除,
控制台提示该方法找不到,一脸懵逼,自己就给删除了把方法,但是程序能够通过入口了正常运行
新手学习,求解答!工体谢腰!
原因:
我是用的mybatis-generator自动生成的dao等一些代码,在打包过程中,他会又执行一遍mybatis-generator自动化生成代码的命令。Mapper.java整个文件都会被替换掉,所以在Mapper.java中自定义的方法肯定是没了。
解决方法:
在生成好相关文件后,在pom.xml中删除mybatis-generator的依赖,在进行打包就可以了。
欢迎follow:
https://github.com/DianeDii