一、问题描述
表名order和字段名key是Mysql数据库的关键字,数据库操作全部失败
二、问题解决
1、如果是表名
给实体类打上@TableName注解,加上``就好了,采用配置自己规定表名,不使用默认配置,如图:
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("`order`")
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id", type = IdType.AUTO)
private Long id;
}
2、如果是字段名
将生成的实体加上``
处理
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("`order`")
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@TableField(value = "`key`")
private String key;
}