【发布时间】:2011-03-15 10:08:15
【问题描述】:
我是 GAE 和 JDO 的新手,我不知道如何更新数据。
使用下面的代码,如果我对一个对象执行 getAll(),然后是 get(),然后更改 get() 返回的该对象的属性,然后是 getAll(),第二次调用 @987654324 @ 返回原始未更改的对象。
我尝试做一个 flush() 但这似乎没有帮助。如果我重新启动码头,数据不会持久化。
public class Notes {
@SuppressWarnings("unchecked")
public List<Note> getAll() {
PersistenceManager pm = PMF.instance().getPersistenceManager();
Query query = pm.newQuery("select from com.uptecs.google1.model.Note order by subject");
return (List<Note>) query.execute();
}
public void add(Note note) {
PersistenceManager pm = PMF.instance().getPersistenceManager();
pm.makePersistent(note);
pm.flush();
}
public Note get(long id) {
PersistenceManager pm = PMF.instance().getPersistenceManager();
return (Note)pm.getObjectById(Note.class, id);
}
public void update(Note note) {
PersistenceManager pm = PMF.instance().getPersistenceManager();
pm.flush();
}
}
【问题讨论】:
标签: java google-app-engine jdo