java开发MyBatis中常用plus实体类注解符详解
mybatis-plus常用注解符
1. 表名注解(@TableName)
作用:实体类和数据库中表建立对应关系:如
@TableName("thotset")
public class HotsetEntity implements Serializable {
private static final long serialVersionUID = 1L;
private Integer fclass;
private Integer fpwid;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date fbdate;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date fedate;
}
代表:HotsetEntity 对应数据库中表为thotset
2. 主键注解(@TableId)
作用:标识实体类的属性对应的是表中的主键,还配置主键的生成策略,如:
@TableName("tsvbase")
public class PaintLifeEntity implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(type = IdType.AUTO)
private String recid;
private String fcode;
private String fname;
}
代表:recid是表中的主键,主键的生成策略为自增类型。
在mybaits-plus中主键生成策略及注意事项
IdType.ASSIGN_ID: 主键类型为长整型或字符串,使用这类主键时要注意,在前端长整形在数据转换时和整型长度不匹配问题,会引发错误。
IdType.ASSIGN_UUID:主键类型为String,为32为不重复字符串。注意该字符串为乱序,使用它时注意一条记录,页面刷新后新增的记录并非最后一条或第一条,经常找不到新增的记录,维护时用户体验很差。
IdType.AUTO:自增;
IdType.input: 插入数据前需要使用其他方式得到主键,将得到的数据赋值到主键上。
IdType.NONE:无状态,类同于Input
注 mybatis-plus其他主键注解在高版本已经废弃
3. 属性注解(@TableField)
作用:该属性非主键属性,解决属性名与字段名不匹配问题、属性是否是数据表中字段、insert、update生成策略等。如:
@TableName("thotset")
public class HotsetEntity implements Serializable {
private static final long serialVersionUID = 1L;
private Integer fclass;
private Integer fpwid;
@TableField(vlaue="fb_date")
private Date fbdate;
@TableField(exist=false)
private Date fedate;
}
第一个注解代表属性fbDate对应的数据库字段名为fb_date
第二个注解代表fedate属性不与表中的字段匹配,在新增、修改时,不用去匹配
常用的就这三个,其他注解不再详细描述。
上一篇:详解SpringCloud微服务架构之Hystrix断路器
栏 目:JAVA代码
下一篇:Mockito mock Kotlin Object类方法报错解决方法
本文标题:java开发MyBatis中常用plus实体类注解符详解
本文地址:http://www.codeinn.net/misctech/185363.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




