MyBatisPlus注入公共Sql问题
来源:互联网 发布:网络自制剧排行榜 编辑:程序博客网 时间:2024/06/16 11:26
同事新建项目运行CRUD时发现MyBatis的Mapper找不到对应方法,该方法为AutoMapper中的公共方法。
在此之前做了一次依赖及配置清理,怀疑是否不小心多删除了什么或是版本变化导致出了问题。把该项目还原就不会出现此问题,间接证明了此猜想。但另外一个项目同样的框架环境确是正常,所以肯定不是版本的问题。公司MyBatisPlus的版本是1.x版本,同事之前用的版本是2.x。
我从MyBatisPlus的MybatisSqlSessionFactoryBean初始化一步一步的Debug,到MybatisXMLMapperBuilder(2.x中为XMLMapperBuilder)的parse()里的bindMapperForNamespace()方法。首先会判断你的Mapper接口是否继承至BaseMapper,如果是则使用AutoSqlInjector进行公共增删改查方法的注入。2.x则是在MybatisConfiguration.addMapper里调用MybatisMapperAnnotationBuilder.parse()中做此判断的。
在1.x中会判断实体类是否配置了主键(@TableId),如果没有配置则所有公共Sql都不会注入。而在2.x中如果没配置主键除了必须要主键的Sql外,其它的Sql还是会注入。
返回项目中一看实体类果然没配置主键,加上@TableId一切正常,Perfect!
阅读全文
0 0
- MyBatisPlus注入公共Sql问题
- SQL注入脚本问题
- sql注入相关问题
- SQL注入问题总结
- 关于sql注入问题
- SQL注入问题
- SQL注入问题
- sql注入的问题
- SQL注入问题
- sql注入问题
- Sql 注入问题总结
- SQL注入的问题
- SQL注入问题
- JDBC-SQL注入问题
- Sql注入漏洞问题
- sql注入问题详解
- ASP.net SQL注入问题
- 触发器解决SQL注入问题
- RxJava 的 CompositeSubscription与内存泄漏
- android studio 3.0 升级 项目遇到的问题更改
- C++之全局对象、局部对象、静态对象详解
- Eclipse导出可执行Java工程/可执行Jar文件(包含第三方Jar包)
- 算法工程师
- MyBatisPlus注入公共Sql问题
- H5房卡牛牛ios进入微信手势侧滑返回问题
- Mysql日志--缓慢指令日志
- vue开发:vue-cli+axios解决跨域问题
- python常见变量的定义,引用,修改
- 微信授权登录,提示-2,用户取消
- PHP5.6版本安装redis扩展
- HTTP method POST is not supported by this URL解决方案
- PCB各层介绍和AltiumDesigner画PCB时的规则设置