1、@TableId
注解的说明:用于设置id的生成策略,即设置主键id是怎么生成的。
package com.baomidou.mybatisplus.annotation;
public enum IdType {
AUTO(0),
NONE(1),
INPUT(2),
ASSIGN_ID(3),
ASSIGN_UUID(4),
/** @deprecated */
@Deprecated
ID_WORKER(3),
/** @deprecated */
@Deprecated
ID_WORKER_STR(3),
/** @deprecated */
@Deprecated
UUID(4);
private final int key;
private IdType(int key) {
this.key = key;
}
public int getKey() {
return this.key;
}
}
实际应用
@Data
@NoArgsConstructor
@AllArgsConstructor
public class JhDelicacyDishes extends BusinessBaseEntity {
private static final long serialVersionUID = 1L;
/** 主键 */
@TableId(type = IdType.AUTO)
private Long delicacyDishesId;
}
2、@TableField
注解的说明:
1.对象中的属性名和表中的字段名不一致(非驼峰)。
2.对象中的属性字段在表中不存在。
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("tb_user")
public class User{
private Integer id;
private String userName;
@TableField(select = false)//不希望password出现在查询结果中
private String passWord;
private String name;
private Integer age;
@TableField(value = "email")//解决字段名不一致
private String mail;
@TableField(exist = false)//指明该属性在数据库表的字段中不存在
private String address;
}
参考文章:https://blog.csdn.net/tantangyueyue/article/details/119735409