По умолчанию MappingMongoConverter добавляет специальный тип ключа ( "_class" ) к каждому объекту в базе данных. Итак, если я создаю Person:
package my.dto;
public class Person {
String name;
public Person(String name) {
this.name = name;
}
}
и сохраните его в db:
MongoOperations ops = new MongoTemplate(new Mongo(), "users");
ops.insert(new Person("Joe"));
результирующий объект в монго будет:
{ "_id" : ObjectId("4e2ca049744e664eba9d1e11"), "_class" : "my.dto.Person", "name" : "Joe" }
Вопросы:
-
Каковы последствия перемещения класса Person в другое пространство имен?
-
Возможно ли загрязнение объекта ключом "_class"? без написания уникального конвертера только для класса Person?