【问题标题】:Morphia: Translating DBObject to EntityMorphia:将 DBObject 转换为实体
【发布时间】:2015-01-15 07:23:18
【问题描述】:

我正在尝试使用 Morphia 库从 MongoDB 中检索 Java 对象,如 here 所述。这需要指定实体类;但是,我将遍历集合列表,并希望能够将 DBObject 任意转换为它们各自的 Java 对象。

Morphia 将 Java 关联存储在 className 字段中,所以有没有办法利用它,这样我就不必显式定义实体类?

【问题讨论】:

    标签: java mongodb morphia nosql


    【解决方案1】:

    泛型是你的朋友。您的实体应继承自基础实体。然后你可以这样的通用查询:

    public <E extends BaseEntity> ObjectId persist(E entity) {
      mongoDatastore.save(entity);
      return entity.getId();
    }
    

    如需完整的代码示例,请查看:https://github.com/xeraa/morphia-demo/blob/master/src/main/java/net/xeraa/morphia_demo/entities/BaseEntity.java

    【讨论】:

      猜你喜欢
      • 2015-04-14
      • 2018-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      • 2012-09-24
      • 2011-08-06
      相关资源
      最近更新 更多