2017-11-03 13 views
-1

実際、Room永続ライブラリで内部jsonArrayを使用する方法は明確です。 POJOクラスは次のとおりです。Room永続ライブラリを使用してjsonobject内に複数のjsonarrayを表現する

@Entity(tableName = "customer") 
public class CustomerResponseModel { 
    @PrimaryKey 
    @ColumnInfo(name = "version") 
    @SerializedName("version") 
    private int version; 
    @ColumnInfo(name = "sync_date") 
    @SerializedName("sync_date") 
    private long syncDate; 
    @Relation(parentColumn = "version", entityColumn = "customerId", entity = CustomerList.class) 
    private List<CustomerList> customerList; 
} 

@Entity 
public class CustomerList { 
    @PrimaryKey 
    @SerializedName("customer_id") 
    private String customerId; 
    @SerializedName("customer_type") 
    private String customerType; 
    @SerializedName("customer_name") 
    private String customerName; 
    @SerializedName("customer_addresses") 
    @Relation(parentColumn = "customerId", entityColumn = "id", entity = CustomerAddress.class) 
    private List<CustomerAddress> customerAddresses; 
} 

@Entity 
public class CustomerAddress { 
    @PrimaryKey(autoGenerate = true) 
    private int id; 
    @SerializedName("address") 
    private String address; 
    @SerializedName("contact") 
    private String contact; 
} 

Error:(15, 8) error: Entities cannot have relations.

+0

から公式ドキュメントを参照してください? – yacc

+0

私はこのリンクを参照しました:https://stackoverflow.com/questions/44815784/room-persistent-database-how-to-insert-list-of-items-into-db-when-it-has-no-pr – cyrus000

+0

質問に追加できる情報を追加する必要があります。 – yacc

答えて

0

をCUSTOMERLISTクラスは@Entityで、その中にあなたが@Relationアノテーションを使用しているため、問題が表示されます。そのクラスから@Entityを削除すると、その問題は消滅します。

だから予想される動作が何であるかhere

Note that @Relation annotation can be used only in Pojo classes, an Entity class cannot have relations.

関連する問題