mybatisPlus序列化主键id
日常吐槽–一次偶然的错,顺手记录
@Data
@TableName("robot_audit_log")
public class RobotAuditLog implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/``
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 操作对象
*/
private String operationObject;
/**
* 操作模块
*/
private String operationModule;
/**
* 操作用户
*/
private String operationUser;
上面代码块中的@TableId(value = “id”, type = IdType.AUTO)注解对应的是mysql表中主键id并设置成自增
如果没有这个注解会产生什么问题呢?就很尴尬的问题,他会默认给你序列化成long(自己定义的类型这里实体类中我定义的是long)类型区间的一个值,恰巧呢主键在表设计时一般给的
值不是那么大,此时此刻,问题就显而易见了,值超过范围了!
因此大家在写的时候注解别粗心给搞忘了,例如
`
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
一般的注解顺手加了。。。。
好了,就到这儿了