Mybatis Plus

@TableName

注解作用:设置实体类对应的表明

value作用:value指定数据库中的表名

  1. @TableName(value = "u_user") user实体类

yml配置:

global-config: db-config: table-prefix: u_ // 库名默认前缀

@TableId

如果使用的雪花算法前端可能会精度丢失那么使用 将long型转为字符型 还可以使用MVC扩展器

@JsonSerialize(using = ToStringSerializer.class)

作用:将属性所对应的字段指定为主键

  1. @TableId(value="id",type = IdType.AUTO) //代表自增算法 默认雪花

1bit 如果是正数默认0 ,41bit 时间戳,10bit 机器码 12bit序列号

分布式 的 ID 分发器 64 bit 的 long 型作为全局唯一ID 引入时间戳所以默认会自增(datacenterId和workerId)

yml配置:

global-config: db-config: id_type: 自增类型

@TableField

公共字段的自动填充  比如 更新时间 删除时间 插入时间等

如果不加这个注解的话,就会默认两个单词中间加一个—,如下图所示 应该与表中字段对应

* 字段自动填充策略 FieldFill fill() default FieldFill.DEFAULT;

public enum FieldFill {
    DEFAULT(0, "默认不处理"),
    INSERT(1, "插入填充字段"),
    UPDATE(2, "更新填充字段"),
    INSERT_UPDATE(3, "插入和更新填充字段");

再实现 MetaObjectHandler 编写自己的处理器 来填充字段数据 用metaObject来set值 

@TableLogic

 0表示未删除状态,1表示删除状态

物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据

逻辑删除:假删除,将对应数据中代表是否被删除字段的状态修改为“被删除状态”,之后在数据库 中仍旧能看到此条数据记录

使用场景:可以进行数据恢复,对删除的数据进行恢复的操作

我们对数据进行delete删除之后,我们再进行查询操作时查询不到的(这个时候不用指定deleted=0),但是数据还是存在在数据库中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值