最近在做一個前后端分離的小項目,需要刪除用戶表的用戶,但是用戶再別的表做了外鍵,所以只能做成邏輯刪除,一通百度查資料后得以實現:
1、用戶實體類
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
package com.sie.demo.entity; import com.alibaba.fastjson.annotation.JSONField; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; import java.sql.Timestamp; //@Data:作用于類上,是以下注解的集合:@ToString @EqualsAndHashCode @Getter @Setter @RequiredArgsConstructor @Data @AllArgsConstructor @NoArgsConstructor @TableName ( "Users" ) public class Users implements Serializable { private static final long serialVersionUID = 30L; //mabatis-plus:數據庫的字段命名方式為使用下劃線連接,對應的實體類應該是駝峰命名方式 String userName; String password; String name; int status; int sex; @JSONField (format = "yyyy-MM-dd HH:mm:ss" ) Timestamp createTime; @JSONField (format = "yyyy-MM-dd HH:mm:ss" ) Timestamp updateTime; String email; String note; @TableId ( "user_id" ) long userId; String phoneNumber; @TableLogic //這個標簽用來標識這是個用來偽刪除的字段 @TableField ( "IS_DELETE" ) int isDelete; public Users(String userName, String password) { this .userName = userName; this .password = password; } } |
2、yml配置
1
2
3
4
5
|
mybatis-plus: global-config: db-config: logic-delete-value: 1 # 邏輯已刪除值(默認為 1) logic-not-delete-value: 0 # 邏輯未刪除值(默認為 0) |
3、service層,
1
2
3
4
5
6
7
8
9
|
@Override /** * 刪除用戶 */ public Integer deleteUserByIds(String[] userSelected) { Wrapper wrapper = new QueryWrapper(); List userIds = Arrays.asList(userSelected); return userMapper.deleteBatchIds(userIds); } |
4、controller層
1
2
3
4
5
6
7
8
9
|
@DeleteMapping ( "delete" ) public RetResult<PageUserVo> deleteUserByIds(String[] ids){ Integer isDelete = userService.deleteUserByIds(ids); if (isDelete != 0 ){ return RetResponse.makeRsp( 200 , "刪除成功" ); } else { return RetResponse.makeRsp( 500 , "刪除失敗" ); } } |
5、運行后控制臺的sql語句直接就是update了
完畢!
springboot+oracle+mybatis-plus實現分頁
到此這篇關于springboot+mybatis-plus+oracle實現邏輯刪除的文章就介紹到這了,更多相關springboot+mybatis-plus+oracle 邏輯刪除內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/weixin_46108919/article/details/119336252