如果我更改类定义,AppEngine JDO 查询不会获取对象

发布于 2025-01-04 15:54:18 字数 837 浏览 2 评论 0原文

我有一个名为 User 的类。看起来像这样

@PersistenceCapable
public class User
{
    @Persistent private String key;
    @Persistent private String email;
    @Persistent private String password;
    ...
}

我在数据存储中有一些用户对象。我在定义中添加了两个字段。

@Persistent private boolean passwordReset;
@Persistent private boolean needsReset;

现在,我对电子邮件的查询

pm.newQuery(User.class, "email == mail");
query.execute(email);

不会返回任何数据,即使数据存储查看器仍然显示对象。我能做什么来修复它?

编辑:没有 jdo 的更多代码:

DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Query q = new Query("User");
q.addFilter("email", Query.FilterOperator.EQUAL, email);
PreparedQuery pq = datastore.prepare(q);
Entity result = pq.asSingleEntity();

即使有数学数据,t 也为 null

I have a class called User. it looks somethinh like this

@PersistenceCapable
public class User
{
    @Persistent private String key;
    @Persistent private String email;
    @Persistent private String password;
    ...
}

I have some User objects in the datastore. I added two more fields to the definition.

@Persistent private boolean passwordReset;
@Persistent private boolean needsReset;

Now, my queries on email

pm.newQuery(User.class, "email == mail");
query.execute(email);

don't return any data, even though the datastore viewer still displays the objects. What can I do to fix it?

edit: more code without jdo:

DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Query q = new Query("User");
q.addFilter("email", Query.FilterOperator.EQUAL, email);
PreparedQuery pq = datastore.prepare(q);
Entity result = pq.asSingleEntity();

t is null even if there is mathing data

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

铁轨上的流浪者 2025-01-11 15:54:18

I had the same problem (see here). You probably did'nt implement the serialVersionUID field in your class. Eventually I had to create a new JDO object and migrate the existing data (old objects) to the new model using a handler.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文