文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

springboot+mybatis-plus+oracle实现逻辑删除

2024-04-02 19:55

关注

最近在做一个前后端分离的小项目,需要删除用户表的用户,但是用户再别的表做了外键,所以只能做成逻辑删除,一通百度查资料后得以实现:

1、用户实体类


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配置


mybatis-plus:
  global-config:
    db-config:
      logic-delete-value: 1 # 逻辑已删除值(默认为 1)
      logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)

3、service层,


@Override
    
    public Integer deleteUserByIds(String[] userSelected) {
        Wrapper wrapper = new QueryWrapper();
        List userIds = Arrays.asList(userSelected);
       return userMapper.deleteBatchIds(userIds);
    }

4、controller层


 @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 逻辑删除内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯