springboot mongodb 数据添加时更改‘_class‘字段

重写beanMappingMongoConverter

修改DefaultMongoTypeMapper

java 复制代码
 /**
     * 更改默认的 MongoDB 映射转换器,更改'_class'字段
     *
     * @param factory     MongoDB 工厂对象
     * @param context     MongoDB 映射上下文
     * @param beanFactory springBean 工厂
     * @return MongoDB 映射转换器
     */
    @Bean
    public MappingMongoConverter mappingMongoConverter(MongoDbFactory factory, MongoMappingContext context, BeanFactory beanFactory) {
        DbRefResolver defaultDbRefResolver = new DefaultDbRefResolver(factory);
        MappingMongoConverter mappingMongoConverter = new MappingMongoConverter(defaultDbRefResolver, context);
        try {
            mappingMongoConverter.setCustomConversions(beanFactory.getBean(CustomConversions.class));
        } catch (NoSuchBeanDefinitionException ignore) {
        }
        ///修改DefaultMongoTypeMapper的传参值,是什么_class就被改为什么,时值为null时,则没有_class字段
        mappingMongoConverter.setTypeMapper(new DefaultMongoTypeMapper(null));
        return mappingMongoConverter;
    }
相关推荐
追逐时光者3 小时前
精选 4 款基于 .NET 开源、功能强大的 Windows 系统优化工具
后端·.net
TF男孩3 小时前
ARQ:一款低成本的消息队列,实现每秒万级吞吐
后端·python·消息队列
AAA修煤气灶刘哥4 小时前
别让Redis「歪脖子」!一次搞定数据倾斜与请求倾斜的捉妖记
redis·分布式·后端
AAA修煤气灶刘哥5 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
你的人类朋友5 小时前
什么是API签名?
前端·后端·安全
昵称为空C7 小时前
SpringBoot3 http接口调用新方式RestClient + @HttpExchange像使用Feign一样调用
spring boot·后端
架构师沉默7 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
RoyLin8 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js
该用户已不存在8 小时前
Mojo vs Python vs Rust: 2025年搞AI,该学哪个?
后端·python·rust
Moonbit8 小时前
MoonBit 正式加入 WebAssembly Component Model 官方文档 !
前端·后端·编程语言