MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Définir le convertisseur MongoDb par programmation

Cette réponse peut être un peu tardive pour l'OP, mais je viens de rencontrer le même problème aujourd'hui et j'ai trouvé une solution...

Pour le configurer par programmation, vous devez appeler MongoMappingConverter.afterPropertiesSet() avant de l'utiliser. Je l'ai réalisé en lisant le code de MongoTemplate.getDefaultMongoConverter(MongoDbFactory) .

Voici un exemple :

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);