sql >> データベース >  >> NoSQL >> MongoDB

春のMongoPopulatorを1つずつ

    質問に対する組み込みのサポートはありませんが、いくつかのクラスを調整することで簡単に提供できます。

    カスタムジャクソン2リーダーを追加

    public class CustomJackson2ResourceReader implements ResourceReader {
    
        private static final Logger logger = LoggerFactory.getLogger(CustomJackson2ResourceReader.class);
    
        private final Jackson2ResourceReader resourceReader = new Jackson2ResourceReader();
    
        @Override
        public Object readFrom(Resource resource, ClassLoader classLoader) throws Exception {
            Object result;
            try {
                result = resourceReader.readFrom(resource, classLoader);
            } catch(Exception e) {
                logger.warn("Can't read from resource", e);
                return Collections.EMPTY_LIST;
            }
            return result;
        }
    }
    

    カスタムジャクソン2ポピュレーターを追加

    public class CustomJackson2RepositoryPopulatorFactoryBean extends Jackson2RepositoryPopulatorFactoryBean {
        @Override
        protected ResourceReader getResourceReader() {
            return new CustomJackson2ResourceReader();
        }
    }
    

    構成

    @SpringBootApplication
    public class DemoApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(DemoApplication.class, args);
        }
    
        @Bean
        public AbstractRepositoryPopulatorFactoryBean repositoryPopulator(ObjectMapper objectMapper, KeyValueRepository keyValueRepository) {
            Jackson2RepositoryPopulatorFactoryBean factory = new CustomJackson2RepositoryPopulatorFactoryBean();
            keyValueRepository.deleteAll();
            factory.setMapper(objectMapper);
            factory.setResources(new Resource[]{new ClassPathResource("badclassname.json"), new ClassPathResource("good.json"), new ClassPathResource("malformatted.json")});
            return factory;
        }
    
    }
    

    実用的な例をここにアップロードしました



    1. LaravelをAWSのRedisクラスターで動作させる方法

    2. SparkでRedis:タスクをシリアル化できません

    3. MongoDBを使用するときにJPAが必要ですか?

    4. MongoDB C#ドライバーとサーバーで生成されたObjectId