Chr*_*ris 3 java google-app-engine jdo
我正在使用带有Java的Goole应用引擎数据存储区并尝试使用枚举列表加载对象.每次加载对象时,List都为null.对象是
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class ObjectToSave {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private List<AnEnum> anEnumList;
//public getters and setters
}
Run Code Online (Sandbox Code Playgroud)
枚举很简单
public enum AnEnum {
VALUE_1,
VALUE_2;
}
Run Code Online (Sandbox Code Playgroud)
保存它的代码是
ObjectToSave objectToSave = new ObjectToSave();
List<AnEnum> anEnumList = new ArrayList<AnEnum>();
anEnumList.add(AnEnum.VALUE_1);
objectToSave.setAnEnumList(anEnumList);
PersistenceManager pm = pmfInstance.getPersistenceManager();
try {
pm.makePersistent(objectToSave);
} finally {
pm.close();
}
Run Code Online (Sandbox Code Playgroud)
加载它的代码是
PersistenceManager pm = pmfInstance.getPersistenceManager();
try {
Key key = KeyFactory.createKey(ObjectToSave.class.getSimpleName(), id);
ObjectToSave objectToSave = pm.getObjectById(ObjectToSave.class, key);
} finally {
pm.close();
}
Run Code Online (Sandbox Code Playgroud)
我可以使用http:// localhost:8080/_ah/admin查看数据存储区中的数据,并且可以看到我的列表已经保存但是在加载对象时它不存在.
我使用Eclipse插件创建了我的项目,据我所知,没有对数据存储设置进行任何更改.那么为什么我的枚举列表为null?
归档时间: |
|
查看次数: |
2351 次 |
最近记录: |