SpringData JPA 使用的默认命名策略是: ImprovedNamingStrategy 。用下划线转换驼峰名,如 authorId ,转换成 author_id 。这样就遇到了一个问题:实体中驼峰命名的列名转换成下划线后,在MySQL中执行时找不到字段。java
有两种解决办法:spring
(1)若是这种字段比较少,可使用 @Column 单独对该字段进行标注:bash
@Column(name="authorId") private String authorId;
(2)若是大量存在这种字段,能够更改默认命名策略,替换为:PhysicalNamingStrategyStandardImpl.net
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl