У меня есть spring настройка пользовательских преобразователей данных mongo через xml следующим образом
<mongo:mapping-converter id="mongoConverter" db-factory-ref="mongoDbFactory">
<mongo:custom-converters>
<mongo:converter ref="customWriteConverter" />
<mongo:converter ref="customReadConverter" />
</mongo:custom-converters>
</mongo:mapping-converter>
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongoDbFactory"/>
<constructor-arg ref="mongoConverter"/>
</bean>
<bean id="customWriteConverter" class="package.WriteConverter" />
<bean id="customReadConverter" class="package.ReadConverter" />
В пользовательском конвертере чтения/записи я хотел бы повторно использовать spring -data-mongo default pojo converter для сохранения определенных свойств в качестве поддокументов.
рассмотрим упрощенный пример -
class A {
B b;
String var1;
int var2;
}
class B {
String var3;
String var4;
}
Я хочу обработать преобразование класса A с помощью customWriteConverter
и customReadConverter
, но в моих пользовательских конвертерах я также хочу делегировать преобразование класса B обратно в конвертер POJO spring -data-mongo.
Как я могу это сделать? Я не смог успешно автоустановить MongoConverter или MongoTemplate в пользовательский конвертер, так как создается MongoConverter/MongoTemplate bean, когда он пытается создать собственный конвертер. Можно ли получить доступ к конвертеру по умолчанию и использовать его из пользовательского конвертера?