如何使用Morphia映射未注释的pojo?

时间:2012-03-26 16:35:37

标签: java inheritance morphia

存在一个我无法控制的类:

public class MyPerson {
  private String name;
  private int elevation;

  // getters and setters
}

我想将此人留在Mongo中,但我无法使用@Entity和其他注释更改此类定义。

我希望Mongo中的文档看起来类似于:

{ name : "You", elevation : 65 }

最好的方法是什么?转换器?扩展课程?包含类?

2 个答案:

答案 0 :(得分:0)

必须工作:

morhpia.map(MyPerson.class);
Datastore ds = morhpia.createDatastore(mongo, "my_database");
MyPerson pe = new MyPerson();
pe.setName("cmonkey");
ds.save(pe);

<强> BUT 您必须在POJO中添加@Id字段。 Morphia要求它。

答案 1 :(得分:0)

最简单的方法是将它嵌入你控制的一个中,然后将@Id打开。