Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android上链接房间数据库实体?_Android_Database_Sqlite_Android Room - Fatal编程技术网

如何在android上链接房间数据库实体?

如何在android上链接房间数据库实体?,android,database,sqlite,android-room,Android,Database,Sqlite,Android Room,我对SpringJPA上的这类东西非常熟悉,但我无法让它在Android上工作。我把我的代码贴在下面,这样你可以更好地理解这个问题。我有两个类和第三个类,需要包含类1和2的对象。我知道第三个类的代码是不正确的,因为Room不支持这样的对象引用。如果我只将对象的id-s保存为外键,则无法在结果之后查询 这个问题一定有很好的解决办法。多谢各位 @Entity(tableName = "soup") public class Soup { @PrimaryKey(autoGenerate =

我对SpringJPA上的这类东西非常熟悉,但我无法让它在Android上工作。我把我的代码贴在下面,这样你可以更好地理解这个问题。我有两个类和第三个类,需要包含类1和2的对象。我知道第三个类的代码是不正确的,因为Room不支持这样的对象引用。如果我只将对象的id-s保存为外键,则无法在结果之后查询

这个问题一定有很好的解决办法。多谢各位

@Entity(tableName = "soup")
public class Soup {

    @PrimaryKey(autoGenerate = true)
    private long id;
    private String name;

    // getter and setters
}

@Entity(tableName = "main_course")
public class MainCourse {

    @PrimaryKey(autoGenerate = true)
    private long id;
    private String name;

    // getter and setters
}

@Entity(tableName = "menu")
public class Menu {

    @PrimaryKey(autoGenerate = true)
    private long id;

    private Soup soupOptionOne;
    private Soup soupOptionTwo;
    private Soup soupOptionThree;

    private MainCourse courseOptionOne;
    private MainCourse courseOptionTwo;
    private MainCourse courseOptionThree;
}

使用@Embedded,请参考我看到的@Embedded注释,但这会在使用它的表中创建其他字段。在这种情况下,我想要3张单独的桌子。