【发布时间】:2026-02-08 00:50:01
【问题描述】:
我在数据存储中存储对象时遇到问题。我有一个我正在尝试存储的对象 MyObject,但是当代码执行时没有任何反应。我去查看数据存储仪表板并且 MyObject 不存在。没有抛出异常,也没有错误。
这是我的对象
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class MyObject{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
String name;
@Persistent
String beta;
@Persistent
double loc;
public MyObject(String name1){
name = name1;
}
//getters and setters
}
这是存储对象的代码
public static void saveMyObject(MyObject a)throws Exception{
PersistenceManager pm = PMF.get().getPersistenceManager();
try{
pm.makePersistent(a);
}
catch(Exception e){
throw e;
}
finally{
pm.close();
}
}
谁能看到我错过了什么?
【问题讨论】:
-
我遇到了类似的问题,直到我放弃并转而使用objectify。我会打电话给
pm.makePersistent,datanucleus 会生成一个 FINE 级别的日志,上面写着“对象状态 n_persistent => 空心”或类似的东西,然后就好像一切正常一样返回。完全失去信心需要发生几次这样的事件。
标签: java google-app-engine google-cloud-datastore