使用mybatis plus在逻辑删除时如何自动带操作人字段的更新
时间: 2023-03-14 20:24:09 浏览: 642
MyBatis Plus提供了一个字段策略注解,可以自动填充操作人字段。在实体类中使用@TableLogic注解,如@TableLogic(value = "1"),并在配置文件中添加mybatis-plus.global-config.db-config.logic-delete-value=1,表示逻辑删除时的字段值。此外,还可以使用@TableField(fill = FieldFill.UPDATE)注解自动更新操作人字段,并添加mybatis-plus.global-config.db-config.field-strategy=NOT_NULL来自动填充操作人字段。
相关问题
mybatis plus3.05逻辑删除
MyBatis Plus是一个基于MyBatis的ORM(对象关系映射)工具,它为简化开发、提高效率提供了很多便利功能。在3.0.5版本中,逻辑删除(也称为软删除)是一个常用的功能,它用于标记而不是完全删除数据,当需要保留历史记录但不再显示在前端时非常有用。
逻辑删除通常通过添加一个布尔类型的字段(如`isDelete`或`deleted`)来实现,这个字段默认值为0(表示正常状态),被删除时设置为1。MyBatis Plus提供了对这种逻辑删除的支持,主要体现在以下几个方面:
1. **启用逻辑删除**:在全局配置中启用逻辑删除功能,这样在持久层操作时,MyBatis Plus会自动处理`isDelete`字段的更新。
2. **CRUD操作**:查询时可以通过`笛卡尔积查询`(with_deleted)或`不使用笛卡尔积查询`(without_deleted)来选择是否包含已被删除的数据。`Model.where().delete()`默认就是逻辑删除,而`Model.deleteById(id)`则默认不删除。
3. **查询逻辑删除的数据**:可以通过方法`Model.query().deleted(true)`或`Model.query().deletedEq(true)`来获取已删除的记录。
4. **逻辑删除的反向操作**:例如,如果有一个关联关系,你想删除子表中的所有关联,但保持父表的完整,可以使用`Model.updateChildrenObj`。
相关问题:
1. 如何在MyBatis Plus中启用逻辑删除功能?
2. 如何在查询时只获取未被删除的数据?
3. 更新操作时如何同时更新逻辑删除字段?
mybatis plus deleteByid 逻辑删除
在使用MyBatis Plus的`deleteById`方法进行逻辑删除时,会自动将指定实体的逻辑删除字段的值修改为逻辑删除的值,而不是进行物理删除。具体来说,当你调用`deleteById`方法删除记录时,会将对应记录的逻辑删除字段的值修改为逻辑删除的值。在`@TableLogic`注解中,你可以指定逻辑删除的值,默认情况下为1表示已删除,0表示未删除。因此,当你使用MyBatis Plus的`deleteById`方法时,会自动将该字段的值修改为逻辑删除的值。你不需要在Java代码中做任何处理,MyBatis Plus会自动将该字段视为逻辑删除字段进行处理。具体的配置方式可以参考上面给出的代码示例。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* *3* [springboot+mybatisPlus实现逻辑删除](https://blog.csdn.net/weixin_42759398/article/details/130191568)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [Mybatis-plus 逻辑删除](https://blog.csdn.net/z09z27b_/article/details/131209743)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文