为了账号安全,请及时绑定邮箱和手机立即绑定

MyBatis-Plus进阶

难度高级
时长 2小时10分
学习人数
综合评分9.77
28人评价 查看评价
10.0 内容实用
9.4 简洁易懂
9.9 逻辑清晰

讲师回答 / 老猿
MP没有这个功能,得自己编程实现。有两种方式实现,一种是前端控制,前端除主键外只向后端传递值有修改的字段,mp的更新实体操作默认会对为null的属性进行忽略;第二种方式是后端查询原数据,与从前端接到的数据进行比对,然后自己写逻辑,只更新有修改的字段。

最新回答 / yq029012
已解决, update_time未使用驼峰命名实体类应该为updateTime而非updatetime

讲师回答 / 老猿
不能同时制定两个sql注入器,所以报错,你有一个办法MySqlinjector不要继承DefaultSqlInjector直接继承LogicSqlInjector就可以了,你就配置这一个sql注入器,就既能使用逻辑删除又能加入自定义方法了。

讲师回答 / 老猿
你使用的选装件是怎么配置的,我怀疑你选装件InsertBatchSomeColumn那配置的可能有问题,是不是很多字段都被你排除了?

讲师回答 / 老猿
你好,对于你的提问,我之前的回答,所问非所答了,关于流式查询,mp应该是没有特殊的支持。但是mybatis是支持的,mybatis中可以使用Cursor,进行流式查询,具体方法你可以查阅网上相关文章。

讲师回答 / 老猿
PerformanceInterceptor在3.2.0被移除了,如果想进行性能分析,用第三方的,官方这样写的“该插件 3.2.0 以上版本移除推荐使用第三方扩展 执行 SQL 分析打印 功能”,我课程中也讲第三方扩展执行SQL分析打印功能了。

讲师回答 / 老猿
        这个是idea的验证,他认为你只在Mapper接口中有方法,没有在xml中写对应的sql语句,你可以在file->setting->Editor->Inspections->然后在搜索框中搜索Mybatis,在搜索的结果中,修改相应项的级别就可以了。

讲师回答 / 老猿
插入的时候确实没有,你有两个办法,方法一:insert时自己在实体上把逻辑删除字段set一下,设置为逻辑未删除。方法二:在数据库表中,为逻辑删除标识设置默认值。

讲师回答 / 老猿
        同学,不要搞混概念啊,我的课程只是一个例子,用manager_id列作为TenantId(区分不同租户的字段)了,TenantId应该是你动态获取设置的。有的TenantId可能是当前登录人的机构id或者其他的字段。一般是没有拿当前登录人的id作为TenantId,建议你看看多租户的信息,据我了解目前MP只支持单字段的TenantId。
课程须知
学习本课程前需要具备一定的MyBatis-Plus基础,并熟悉Lambda表达式和SpringBoot。建议先学习《MyBatis-Plus入门》课程,链接在此:https://www.imooc.com/learn/1130。
老师告诉你能学到什么?
1、掌握MP逻辑删除实现 2、掌握MP自动填充实现 3、掌握MP乐观锁实现 4、掌握MP性能分析 5、掌握MP多租户实现 6、掌握MP动态表 7、掌握MP的SQL注入器

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消