Recently began to deal with android development. I just can’t understand how using Room to save such an object in the database:
@Entity(tableName = "test_class") public class TestClass { @Entity(tableName = "inner_one") public static class InnerClassOne { @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id") private long idInnerOne; @ColumnInfo(name = "field") private double field; // getters and setters } @Entity(tableName = "inner_two") public static class InnerClassTwo { @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id") private long idInnerTwo; @ColumnInfo(name = "str") private String str; // getters and setters } @Entity(tableName = "inner_tree") public static class InnerClassTree { @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id") private long idInnerTree; @ColumnInfo(name = "id_test_class") @ForeignKey(entity = TestClass.class, parentColumns = "id", childColumns = "id_test_class", onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.CASCADE) long idTest; @ColumnInfo(name = "ser") private int ser; @ColumnInfo(name = "vid") private int vid; // getters and setters } @PrimaryKey(autoGenerate = true) private long id; @ColumnInfo(name = "id_one") @ForeignKey(entity = InnerClassOne.class, parentColumns = "id", childColumns = "id_one", onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.CASCADE) private long idOne; @ColumnInfo(name = "id_two") @ForeignKey(entity = InnerClassTwo.class, parentColumns = "id", childColumns = "id_two", onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.CASCADE) private long idTwo; private InnerClassOne innerOne; private InnerClassTwo innerTwo; private List<InnerClassTree> lst; // getters and setters } What annotations should I write for the fields innerOne, innerTwo and lst? And what to register in Dao?