Как я могу использовать Morphia, чтобы нанести на карту неаннотированное pojo? - PullRequest
0 голосов
/ 26 марта 2012

Существует класс, который я не могу контролировать:

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

  // getters and setters
}

Я хочу сохранить этого человека в Mongo, но я не могу изменить это определение класса с помощью @Entity и других аннотаций.

Мне бы хотелось, чтобы документ в Монго выглядел примерно так:

{ name : "You", elevation : 65 }

Как лучше всего подойти к этому?Конвертер?Расширенный класс?Содержащий класс?

Ответы [ 2 ]

0 голосов
/ 11 апреля 2012

Самый простой способ - просто вставить его в тот, который вы контролируете, и включить @Id.

0 голосов
/ 26 марта 2012

Должно работать:

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

НО Вы должны добавить поле @Id в POJO.Его требует Морфия.

...