У меня есть класс Event и зависимый класс Entry, экземпляры которого действительны только в контексте события.Обновление коллекции зависимых объектов
Что было бы лучшим способом смоделировать это в JDO? По сути, я не хочу запрашивать записи только для событий и их записей. Так нужен ли мне ключ для входа?
Мое текущее решение:
@PersistenceCapable
public class Event {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
public Long id;
@Persistent
public List<Entry> entries = new ArrayList<Entry>();
}
@PersistenceCapable
public class Entry {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
public Key key;
@Persistent
public String name;
}
Я пытался добавить запись в существующее событие, но оно не acutally сохраняется измененное событие:
Event e = null;
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
e = pm.getObjectById(Event.class, Long.parseLong(id));
System.out.println(e.entries.size());
Entry entry = new Entry();
entry.name = name;
e.entries.add(entry);
pm.makePersistent(e);
System.out.println(e.entries.size());
} catch (NumberFormatException nfe) {
return null;
} finally {
pm.close();
}
return e;
Я попытался сделать запись Встроенный объект, но не допускается сбор встроенных объектов.