springboot中怎么利用mybatis-plus和oracle实现逻辑删除,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
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中怎么利用mybatis-plus和oracle实现逻辑删除的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。