Spring Boot 中去除 spring-data-mongodb 自动生成的 _class 字段
MongoDB Spring Data Spring Boot About 682 words问题现象
在使用MongoTemplate
或MongoRepository
进行持久化时,Spring Data
框架会帮我们自动生成一个_class
字段。
字段说明
_class
字段存储的是类的全路径名,当有子类继承了父类,_class
路径将保存的是子类的全路径名。其作用是:在反序列化时可以转换成子类对应的对象,而如果去除_class
字段,将无法反序列化为子类对象,只能反序列化为父类对象。
去除方法
配置映射转换,去除默认添加。
@Configuration
public class MyBean {
@Bean
public MappingMongoConverter mappingMongoConverter(MongoDbFactory mongoDbFactory, MongoMappingContext mongoMappingContext) {
DbRefResolver dbRefResolver = new DefaultDbRefResolver(mongoDbFactory);
MappingMongoConverter converter = new MappingMongoConverter(dbRefResolver, mongoMappingContext);
converter.setTypeMapper(new DefaultMongoTypeMapper(null));
return converter;
}
}
Views: 5,790 · Posted: 2020-05-11
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...