在春季文档中谈论自定义类型映射 Reference
使用@TypeAlias和TypeInformationMapper ..但我找不到任何实际例子
有人可以参考吗?
定义 MappingMongoConverter 时,它与实体持久性有关吗?
谢谢
答案 0 :(得分:0)
当您使用spring-data持久保存实体时,创建的mongo文档将具有_class属性,该属性存储类的完全限定名称。 @TypeAlias用于自定义_class属性中保存的值。
spring reference中的这个示例显示了如何将_class属性添加到mongo文档中。如果附加@TypeAlias(“sample”),则_class属性将具有值“sample”而不是完全限定名称。
public class Sample {
Contact value;
}
public abstract class Contact { … }
public class Person extends Contact { … }
Sample sample = new Sample();
sample.value = new Person();
mongoTemplate.save(sample);
{ "_class" : "com.acme.Sample",
"value" : { "_class" : "com.acme.Person" }
}