且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Spring-boot:注册mongodb自定义转换器

更新时间:2022-05-28 09:37:18

你需要覆盖 mongodb 的 customConversions,像这样:

You need to override the customConversions of mongodb, like so:

@Configuration
public class MongoConfig {

    @Bean
    public MongoCustomConversions customConversions(){
        List<Converter<?,?>> converters = new ArrayList<>();
        converters.add(ReferenceWriterConverter.INSTANCE);
        return new MongoCustomConversions(converters);
    }

    @WritingConverter
    enum ReferenceWriterConverter implements Converter<Reference, DBObject> {

        INSTANCE;

        @Override
        public String convert(Reference reference) {
            //do stuff
        }
    }
}

当然,您也可以像上面一样在单独的类中声明转换器,然后将其自动装配到配置中.

Of course, you can also declare the converter in your separate class like above and just autowire it into the configuration.