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;
    }
相关推荐
q_1913284695几秒前
基于Springboo和vue开发的企业批量排班系统人脸识别考勤打卡系统
前端·javascript·vue.js·spring boot·mysql·毕业设计·人脸识别
守护砂之国泰裤辣12 分钟前
Windows+docker下简单kafka测试联调
java·运维·spring boot·docker·容器
数据小馒头17 分钟前
MySQL文本处理:全库搜索慢?正则清洗难?掌握这 3 个方法
后端
星浩AI24 分钟前
LCEL:打造可观测、可扩展、可部署的 LangChain 应用
人工智能·后端·python
数据小馒头24 分钟前
MySQL并发与锁:从“防止超卖”到排查“死锁”
后端
用户2986985301425 分钟前
C#: 在Word文档中添加或移除可编辑区域
后端·c#
初次攀爬者27 分钟前
RAG核心升级|多LLM模型动态切换方案
人工智能·后端·ai编程
EntyIU33 分钟前
自己实现mybatisplus的批量插入
java·后端
用户6174332731034 分钟前
MySQL 表的类 Git 版本控制
后端