如何把propper DBFLow注释

时间:2015-08-04 10:58:57

标签: java sqlite orm annotations mapping

我想将医生对象插入数据库,我该如何为属性添加注释?
我尝试使用下面显示的代码进行操作 但我不知道如何在列表属性specializationsphoneNumbers上执行此操作。

@Table(databaseName = WMDatabase.NAME)
public class Doctor extends BaseModel{

@Column
@PrimaryKey
@Unique(unique = true)
private String doctorId;

@Column
private FullName fullName;

@Column
private String organizationId;

@Column What shuld i put here?????
private List<Specialization> specializations;

@Column What shuld i put here?????    
private Contacts contacts;
}

以下是我用于医生属性的类:

public class Contacts extends BaseModel {

private List<PhoneNumber> phoneNumbers;
private String email;
private String fax;
}

public class Specialization extends BaseModel {

@Column
@PrimaryKey
@Unique(unique = true)
private String doctorId;

@Unique(unique = true)
private String specializationName;

public String getSpecializationName() {
    return specializationName;
}

public void setSpecializationName(String specializationName) {
    this.specializationName = specializationName;
}

1 个答案:

答案 0 :(得分:1)

根据文档here,DBFlow是一个关系数据库系统(不是mongo类型的键/值存储),并且不支持列表作为列。

  

列表:不支持列表列,对于关系数据库通常不适用。但是,您可以通过TypeConverter使用非泛型List列。但是,如果可以,请再次避免这种情况。

relationships上的文档可以帮助您优化模型以满足您的需求。