Mybatis-plus常用注解
需求
学习mybatis-plus常用的注解用法并记录。
常用注解总结
-
@Data
使用Data注解后,自动生成get、set、toString方法。
需要安装lombok
-
@TableName(value=“user”)
映射数据库的表名,用于实体类和数据库表名称不一致的情况
-
@TableField(value=“name”)
映射数据库字段,用于实体类中的成员变量和数据库中的字段名称不一致的情况
-
@TableID(value=“id”)
专用于映射数据库主键字段
-
@TableId(type=" ")
- AUTO:数据库自增,int
- NONE:MP set主键,雪花算法实现,非自增
- INPUT:手动赋值,如果开发者没有手动赋值,则数据库通过自增方式给主键赋值
- ASSIGN_ID:MP分配ID,Long、Integer、String
- ASSING_UUID:MP分配UUID,主键类型必须为String类型,雪花算法自动生成
-
@TableField(exist=false)
默认为true,是否为数据库字段,false,查询时忽略该字段 -
@TableField(slect=false)
默认为true,查询时是否查询该字段 -
@TableField(fill =)
fill表示是否自动填充,将对象存入数据库的时候,由mybatis plus 自动给某些字段赋值,create_time,update_time
@TableField(fill = FieldFill.INSERT)
private Date createTime;
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
package com.example.mybatisplus.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class MyMateObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createTime",new Date(),metaObject);
this.setFieldValByName("updateTime",new Date(),metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updateTime",new Date(),metaObject);
}
}
- @TableLogic
逻辑删除
参考
https://blog.csdn.net/qq_42758288/article/details/113888770