首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在hash-map对象上使用Play-Morphia的find()或filter()?

如何在hash-map对象上使用Play-Morphia的find()或filter()?
EN

Stack Overflow用户
提问于 2013-03-18 00:14:15
回答 1查看 564关注 0票数 0

我在Java中使用Play框架和Play-Morphia来使用MongoDb。我得到了一个实体消息,它的定义如下:

代码语言:javascript
复制
@Entity
public class Message{
    public String senderId;
    public Date date;
    public String initiatorId;
    @Embedded public MessageBasicInfo basicInfo;
}

MessageBasicInfo定义如下:

代码语言:javascript
复制
public class MessageBasicInfo implements IModel{
    public HashMap<String, Boolean> recipients;
}

现在,我只想从Mongo检索在收件人的hashmap中值为true的消息。例如,我知道如何在list中执行此操作,但不知道如何使用hashmap对象执行此操作。如果有任何建议,我将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-18 03:26:06

HashMap很难查询。我建议您将您的MessageBasicInfo重新组织为

代码语言:javascript
复制
public class MessageBasicInfo implements IModel {
   public String key;
   public Boolean value;
}

然后您可以通过以下方式查询所有true value消息:

代码语言:javascript
复制
Message.q("basicInfo.value", true).asList();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15463022

复制
相关文章

相似问题

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