2011-10-11 43 views
0

我正在嘗試爲遺留數據庫表創建一個Spring Roo實體。該表沒有定義主鍵。我如何創建一個沒有標識符字段的Spring Roo實體(主鍵)

然而,袋鼠不會讓我定義實體沒有identifierField

@RooEntity(identifierColumn = "", identifierField = "", table = "XYZ", versionField = "") 

這使得Roo的集成測試失敗,:因爲它創建了一個@Id@Column(name = "id")

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'id' in 'field list' 

在Roo_Entity.aj中。

我曾嘗試使用Roo的DBRE函數對此表進行反向工程,但它所做的只是創建一個包含實體所有字段的標識符類。發生這種情況時,我無法爲單個表格列添加查找器。

回答

2

據我所知Roo需要一個主鍵並強烈建議一個版本標識符。

可以使用簡單組合主鍵或組合主鍵。同樣看着DBRE documentation,沒有提到沒有主鍵的表格。

如何修復數據庫?它是哪個DBMS?添加可能自動生成的數字標識符是否可行?

+0

我真的很想避免修改數據庫模式,以便它能與Roo一起工作。我stil無法找到一種方法來使Roo與沒有主鍵的表一起工作,所以我很可能不得不添加主鍵。 – ThePizzle

+0

我永遠無法想出辦法,所以我不得不修改表來添加主鍵。 – ThePizzle

相關問題