Как сохранить arraylist в базе данных ormlite

Я пытаюсь сохранить arraylist объектов класса в базе данных ormlite, но он дает ошибку, java.lang.IllegalArgumentException: никакие поля не имеют аннотации DatabaseField в классе java.util.ArrayList

мой код

@DatabaseTable
public class ManageModelDetails {

@DatabaseField(generatedId = true)
private int id;

@DatabaseField(foreign = true, foreignAutoRefresh = true)
private ArrayList<ModelDetails> listModelDetails;

// ===============================================
public ManageModelDetails() {
    super();
}

// ===============================================

public ManageModelDetails(int id, ArrayList<ModelDetails> listModelDetails) {
    super();
    this.id = id;
    this.listModelDetails = listModelDetails;
}

// ===============================================

public void setId(int id) {
    this.id = id;
}

public int getId() {
    return id;
}

public void setModelList(ArrayList<ModelDetails> listModelDetails) {
    this.listModelDetails = listModelDetails;
}

public ArrayList<ModelDetails> getModelList() {
    return listModelDetails;
}

}

Если вы хотите сохранить ArrayList объектов в ORMLite, это самый простой способ:

@DatabaseField(dataType = DataType.SERIALIZABLE)
private SerializedList<MyObject> myObjects;

и получить список объектов:

public List<MyObject> getMyObjects() {
  return myObjects;
}

и вот SerializedList:

public class SerializedList<E> extends ArrayList<E> implements Serializable {
}
2
ответ дан 24 июля '15 в 0:57
источник