0

我想创建两个具有相同字段的实体,我看到我可以将一个实体扩展为继承字段,我想知道这样做是否是一种好习惯,以及使用单个 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

}
4

1 回答 1

0

正如@MergimRama 所说,这不是一个好主意。使用嵌入对象。

对于嵌入的对象,我应该创建一个包含我想要使用的字段的类:

public class UserName {

    public String firstName;
    public String lastName;

}

并使用我的实体中的字段重用该类,如下所示:

@Entity
public class LoggedUsers {

    @PrimaryKey public int id;

    @Embedded public UserName username;    //Here goes the fields

}

@Entity
public class HistoryUsers {

    @PrimaryKey public int id;

    @Embedded public UserName username;    //Here goes the fields

}
于 2020-10-23T17:50:06.083 回答