3.1.2
ServiceImpl#saveOrUpdateBatch(Collection
建议能否按如下两种方法来处理:
这里额外提个问题:
baseMapper里可否增加boolean existsById(Object id)和Set
再有:
以上问题, 如果你们没时间搞, 我自己提PR是否可以?
插入校验最好在插入之前批量查询一次,不要查询多次,这个你代码运行步骤上应该避免此问题。
我们现有方法已经提供了功能较多的查询方式,你可以使用 java8 默认方法的形式实现你想要新增的功能。比如:自定义一个接口继承 mp 的 BaseMapper,
`
interface YourMapper
default boolean existsById(Object id){
// 将条件构建为 Wrapper 省略
return 0 != selectCount(wrapper);
}
}
`
相比注入一个新的方法,默认方法可以有效减少 mybatis 的 configuration 中 MapperedStatement 的数量,减少内存占用。
有好的建议或者想法欢迎 PR!
Most helpful comment
插入校验最好在插入之前批量查询一次,不要查询多次,这个你代码运行步骤上应该避免此问题。
我们现有方法已经提供了功能较多的查询方式,你可以使用 java8 默认方法的形式实现你想要新增的功能。比如:自定义一个接口继承 mp 的 BaseMapper,
` extends BaseMapper{
interface YourMapper
}
`
相比注入一个新的方法,默认方法可以有效减少 mybatis 的 configuration 中 MapperedStatement 的数量,减少内存占用。
有好的建议或者想法欢迎 PR!