默认的 MappingMongoConverter 会向数据库中的每个对象添加一个自定义类型键 ("_class")。所以,如果我创建了一个 Person:
package my.dto;
public class Person {
String name;
public Person(String name) {
this.name = name;
}
}
并将其保存到数据库中:
MongoOperations ops = new MongoTemplate(new Mongo(), "users");
ops.insert(new Person("Joe"));
在Mongo中得到的结果对象将是:
{ "_id" : ObjectId("4e2ca049744e664eba9d1e11"), "_class" : "my.dto.Person", "name" : "Joe" }
问题:
将Person类移动到不同的命名空间有什么影响?
是否可能在不为Person类编写独特的转换器的情况下,使对象不会被"_class"键污染?