2017-10-19 106 views
0

在我的項目中,我使用Spring和hibernate。我使用MySql併爲Ids使用自動增量。但現在我需要支持多種數據庫類型。 (單獨安裝)。說,MySql,Oracle(11g),Postgresql等春/休眠數據庫之間切換

我目前的想法是使用uuid主鍵,因爲我可以切換到任何數據庫,而不必擔心數據庫層。但因爲我已經使用Integer作爲auto_increment,所以我必須修改我的代碼庫。

有沒有辦法保留Integer ID?還是應該繼續使用uuid?

當前實現

@Id 
@GeneratedValue 
@Column(name = "id", nullable = false, updatable = false) 
private Integer id; 

還是這個(或任何其他解決方案)

@GeneratedValue(generator = "uuid") 
    @GenericGenerator(name = "uuid", strategy = "uuid") 
    @Column 
    @Id 
    private String id; 

回答