【发布时间】:2021-01-29 06:21:35
【问题描述】:
我想创建两个具有相同字段的实体,我看到我可以将实体扩展为继承字段,我想知道这是否是一个好习惯这样做,如果对这些实体使用单个 DAO 和存储库有任何问题。
我想重用的实体
@Entity
public class LoggedUsers {
@PrimaryKey
public int id;
public String firstName;
public String lastName;
}
具有相同字段的新实体
@Entity
public class HistoryUsers extends LoggedUsers {
//Same fields of the other entity
}
【问题讨论】:
-
对于这种情况,这不是一个好主意。相反,您应该在它们之间建立关系。
-
我是一个初学者,你能告诉我怎么做或在哪里检查吗?
-
你可以在这里找到一个很好的例子:developer.android.com/training/data-storage/room/relationships
-
谢谢老兄!所以....只是为了澄清,假设我创建了一个名为“ UserName ”的类,其中声明了字段名称并在实体内部放置了“ @Embedded public UserName userName; ',我会让两个实体具有相同的字段名称,对吧?
-
是的,它会将这些列添加到您要嵌入的实体中。
标签: android android-room android-rom room