2016-11-19 60 views
0

如何在ormlite中創建與表本身的一對多關係?我有一個持有自己的集合的類。我不知道如何繪製這個課程。收集自己的類ORMLite

@DatabaseTable(tableName = "USER") 
public class User { 

    @DatabaseField(generatedId = true) 
    private long id; 
    @DatabaseField 
    private String username; 
    @ForeignCollectionField 
    private ForeignCollection<User> friends; 
    ... 

在此先感謝。

回答

0

我有一個持有自身集合的類。我不知道如何繪製這個課程。

我認爲最好的方法是定義具有店主User,朋友User和ID的參考UserFriend實體。喜歡的東西:

@DatabaseTable(tableName = "USERFRIEND") 
public class UserFriend { 

    @DatabaseField(generatedId = true) 
    private long id; 
    // corresponds to the user who has the friend 
    @DatabaseField(foreign = true) 
    private User user; 
    // corresponds to the friend of the user 
    @DatabaseField(foreign = true) 
    private User friend; 
    ... 

那麼你的外國收藏變爲:

@ForeignCollectionField(foreignFieldName = 'user') 
private ForeignCollection<UserFriend> friends; 

通知其具有指向user因此用戶的朋友可以發現foreignFieldName

+0

謝謝你,你幫了我很多。 –