[英]App Engine JDO Persistent class migrate from com.google.appengine.api.datastore.Key to Long
[英]AppEngine JDO cannot create a Persistent Object due to PMF
我正在使用AppEngine将api从Python移植到Java。 我决定使用JDO。 我已经创建了模型,现在尝试创建一个持久保存到数据存储中的新对象。
我正在按照以下说明进行操作: https : //developers.google.com/appengine/docs/java/datastore/jdo/creatinggettinganddeletingdata
具体来说,该代码在“使对象持久化”部分中
PersistenceManager pm = PMF.get().getPersistenceManager();
Employee e = new Employee("Alfred", "Smith", new Date());
try {
pm.makePersistent(e);
} finally {
pm.close();
}
问题是,我不知道PMF来自哪里。 我在Eclipse中收到“无法解决PMF”错误。
我研究了SO上的其他问题,以弄清PMF的起源,发现其他人也这样做。 PersistenceManagerFactory pmf;
但是,当我尝试这样做时,get()出现了问题。 Eclipse在说
The method get() is undefined for the type PersistenceManagerFactory
有没有人有完整的示例来创建JDO对象并将其持久化到数据存储中,包括所有导入和必要的变量?
提前致谢!!!
到目前为止,这是我的代码:
import java.io.IOException;
import javax.jdo.PersistenceManager;
import javax.jdo.PersistenceManagerFactory;
import javax.servlet.http.*;
@SuppressWarnings("serial")
public class Test_APIServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
resp.setContentType("text/plain");
resp.getWriter().println("Hello, world");
PersistenceManagerFactory pmf;
PersistenceManager pm = pmf.get().getPersistenceManager();
}
}
您可以通过此链接阅读Google的文档,该文档很好地解释了该PMF类是什么
https://developers.google.com/appengine/docs/java/datastore/jdo/overview-dn2
向下滚动到“获取PersistenceManager实例”,然后找到代码。 那只是获得PersistenceManagerFactory的一种方法,基本的JDO不需要此类的Google。 您的代码似乎已经将真正的PersistenceManagerFactory与Google的包装器类混淆了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.