微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JDO查询帮助按配料查找食谱

如何解决JDO查询帮助按配料查找食谱

| 我需要有关JDO查询的帮助。 我有以下实体: 食谱:
@PersistenceCapable
class Recipe{

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Long key;

    ...

    @Persistent(mappedBy = \"recipe\")
    private List<RecipeIngredient> ingredients
}
配方成分:
@PersistenceCapable(identityType = IdentityType.APPLICATION,detachable=\"true\")
class RecipeIngredient implements Serializable {

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;

    @Persistent
    Integer amount

    @Persistent
    Key unit

    @Persistent
    Key ingredient

    @Persistent
    Recipe recipe
成分:
@PersistenceCapable(identityType = IdentityType.APPLICATION,detachable=\"true\")
class Ingredient implements Serializable {

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;

    @Persistent
    String name
一个配方可以有几个配方成分,其中包含实际成分,成分数量和单位。 我想按仅包含给定成分而不包含更多成分的成分获取所有食谱。 目前,我这样做: 通过成分名称获取所有成分对象 通过成分键获取所有配方成分对象 按食谱获取所有食谱 检查食谱中的所有食谱成分是否都在之前的食谱成分列表中 如果是这样,则将配方添加输出列表 我可以通过查询吗?也许与拥有类似的东西?     

解决方法

尝试类似... 从配方r中选择r         其中Ingredients.contains(ri)&&(ri.ingredient.name.matches(:searchTxt)) 还可以看一下:http://www.datanucleus.org/servlet/forum/listthreads?forum=9 我不使用Google App Engine,但确实大量使用DataNucleus,并且我相信DataNucleus是App Engine使用的JDO的实现。 让我知道它在App Engine上的工作原理,因为我一直在我的应用程序中做同样的事情。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。