2012-03-14 21 views
0

使用ormlite,我有2個類:Menu和MenuItem。我想在MenuItem中有兩個外部字段,它們都指向一個Menu類。但是,這似乎並不奏效。對同一個班級只使用一個外地工作。我怎樣才能達到我想要的?使用ormlite時,2個外部字段爲同一類

@DatabaseTable 
public class MenuItem { 

    /* ... */ 

    @DatabaseField(foreign = true, foreignAutoRefresh = true, columnName = "destination_submenu") 
    public Menu destinationSubmenu; 

    @DatabaseField(foreign = true, foreignAutoRefresh = true, columnName = "menu") 
    public Menu menu; 
} 

回答

2

我想通了這個問題。我在Menu類中使用了一個ForeignCollectionField,但是因爲我在MenuItem中有兩個外鍵,所以它沒有按預期工作。解決方案是使用foreignColumnName。

@DatabaseTable 
public class Menu { 

/* ... */ 
    @ForeignCollectionField(foreignColumnName = "menu") 
    @JsonIgnore 
    private ForeignCollection<MenuItem> items; 
} 
+0

對於後代:foreignColumnName是在4.36版本中,當前(2012年3月)處於SNAPSHOT狀態。 – Gray 2012-03-15 12:26:36