微服务 教程
1085个小节阅读:196.1k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
我们将表名改为tb_student,id字段名改为sid,name字段名改为sname,此时由于名字不同无法完成映射,我们可以通过相关注解为实体类对象指定表名和列名。
作用:指定类为哪个表的实体类
位置:类上方
作用:指定实体类的属性为主键
位置:属性上方
属性:
value:主键字段名
type:主键策略
值 | 描述 |
---|---|
NONE | 无状态,不设置主键类型 |
AUTO | 自增主键 |
INPUT | 插入前自行设置主键值 |
ASSIGN_ID | 默认策略,使用雪花算法自动生成主键ID,主键类型为整形或字符串。(雪花算法:微博开源的分布式ID生成算法,使用一个64位的Long类型数字作为全局唯一ID。在分布式系统中的应用十分广泛,且ID引入了时间戳,基本上保持自增) |
ASSIGN_UUID | 自动生成排除中划线的UUID作为主键,主键类型为字符串。 |
作用:在属性和列名不同的情况下,指定映射关系
位置:非主键属性上方
xxxxxxxxxx
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("tb_student")
public class Student {
@TableId(value = "sid",type = IdType.AUTO)
private Integer id;
@TableField("sname")
private String name;
private String email;
private String gender;
private Integer age;
}
1. 在MyBatisPlus中,可以指定类为哪个表的实体类
A @TableName
B @TableId
C @TableField
D @Table
2. 在MyBatisPlus中,可以指定实体类的属性为主键
A @TableName
B @TableId
C @TableField
D @Table
1=>A 2=>B