2016-07-30 28 views
0

我想一個表映射到使用JPAJPA是由自身創造列

 

    @Entity 
    @Table(Data) 
    public class AllData implements Serializable { 
     @Id 
     @Column(name="AppID") 
     private String appID; 
     @Column(name="firms_bad_dt_in_last") 
     private String no_of_firms_has_bad_debt_in_last_3_years_Including_credit_card; 
    } 

現在當Hibernate是連接到數據庫,它是創建名稱爲no_of_firms_has_bad_debt_in_last_3_years_Including_credit_card新的列,而不是映射一類是現有的柱(firms_bad_dt_in_last)。我錯過了什麼?

我不想創建一個新的列,我想它映射到現有的列,並從中獲取數據..我該怎麼做?謝謝!

我正在使用彈簧引導。

回答

0

如果您想關閉此功能,您可以更改以下hibernate屬性。另外,如果您正在使用postgressql或其他任何具有區分大小寫的列的數據庫,那麼您需要檢查這些列所處的情況。

<prop key="hibernate.hbm2ddl.auto">validate</prop> 
0

如果這些表不存在於數據庫中,那麼默認情況下,hibernate將獲取屬性名稱並使用這些屬性名稱創建這些表格。如果db中存在表格,那麼您在db中提到的列名稱表必須與@Column(name =「」)應該提及的列名相同,那麼只會進行映射。