MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Legen Sie den MongoDb-Konverter programmgesteuert fest

Diese Antwort ist vielleicht etwas spät für das OP, aber ich bin heute auf dasselbe Problem gestoßen und habe eine Lösung gefunden ...

Um es programmgesteuert einzurichten, müssen Sie MongoMappingConverter.afterPropertiesSet() aufrufen bevor Sie es verwenden. Ich habe dies beim Lesen des Codes für MongoTemplate.getDefaultMongoConverter(MongoDbFactory) erkannt .

Hier ist ein Beispiel:

MappingMongoConverter converter = new MappingMongoConverter(mongoDbFactory, context);
converter.setTypeMapper(mapper);
converter.setCustomConversions(new CustomConversions(
        Arrays.asList(
                new TimeZoneReadConverter(),
                new TimeZoneWriteConverter()
        )
));
converter.afterPropertiesSet();
MongoTemplate template = new MongoTemplate(mongoDbFactory, converter);