首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将获取的Google cloud数据存储实体(com.google.cloud.datastore.Entity)映射到自定义Java对象

如何将获取的Google cloud数据存储实体(com.google.cloud.datastore.Entity)映射到自定义Java对象
EN

Stack Overflow用户
提问于 2020-06-26 13:06:45
回答 1查看 210关注 0票数 0

我正在使用下面的查询(com.google.cloud.datastore.Query)获取数据存储实体(com.google.cloud.datastore.Entity)的列表。我无法将Datastore实体对象映射到我的自定义Java对象。任何建议都会有很大帮助。谢谢。

代码语言:javascript
复制
Query<Entity> query = Query.newEntityQueryBuilder()
                .setNamespace("abc")
                .setKind("ca")
                .setFilter(StructuredQuery.PropertyFilter.eq("name", "xyz"))
                .build();

QueryResults<Entity> tasks = datastore.run(query);

for (QueryResults<Entity> it = tasks; it.hasNext(); ) {
            Entity entity = it.next();
            User user = entity.toUser();//How to map to my custom Java class
        }
EN

回答 1

Stack Overflow用户

发布于 2020-06-26 16:52:00

不确定User和数据存储中的实体之间是什么关系,也不确定您到底想要做什么,但是在Datastore Java API中有getPropertyMap方法(reference)。该方法似乎非常适合您的任务,因为它返回Map<String,Value>

您所需要做的就是在User类中实现新的构造函数,该构造函数将从该Map创建User实例。

代码行应该是这样的:User user = new User(entity.getPropertyMap());

我相信这只是其中一种方式:)

我希望它能有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62588350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档