2013-02-11 23 views
4

我有一些長名稱的類,我使用Hibernate存儲在數據庫中。
我注意到,hibernate創建了dtype列(用於繼承支持)作爲字符變化(31)。
由於類名長於31個字符,插入失敗。
解決問題的最佳方法是什麼?
由於我有很多類,我更喜歡在每個類中添加註釋的全局設置。dtype列太短,無法保存類名

回答

4

使用@DiscriminatorValue("some_short_name")到所有的子類。我不認爲有任何其他解決方案。

9

替代JB Nizets答案是通過指定

@DiscriminatorColumn(length=100) 

將提供一個列,它是足夠長的時間。