Spring boot jpa @Column命名大小寫問題

一:在JPA中有個很扯淡的事情那就是,你如果是按照約定設計的數據庫,那麼沒有什麼問題。可是不按照約定呢?

@Entity
@Table(name = "user")
public class User implements Serializable {

    @Id
    @Column(name = "objectId", length = 32)
    private String objectId;

首先我強調,你要確保你的數據庫中的字段和colum一致,並且沒有什麼換行這種低級錯誤。

然後我們調用接口後發現會報錯

 Unknown column 'user0_.object_id' in 'field list'

你確認你的字段正確,沒有換行錯誤的話,這裏的原因只有一個:

那就是駝峯命名,即使你指定@Column的name也不起作用

二:解決辦法

在application.properties添加jpa屬性:

spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

複製粘貼,就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章