2015-10-28 3 views
1

Как настроить сериализатор Jackson JSON для SQS? Я googled вокруг, но до сих пор все, что я нашел, связано с веб-материалом Spring, и, похоже, нет никакого способа получить ссылку на сериализатор, который использует Spring SQS, так что я может добавлять мои пользовательские типы (Java 8 Date stuff)Как настроить сериализатор Jackson для Spring SQS

+0

Что это весна SQS вы говорите? – ESala

+0

Служба весеннего облака SQS: http://cloud.spring.io/spring-cloud-aws/spring-cloud-aws.html#_sqs_support – Zipper

ответ

3

Я только что посмотрел исходный код spring-cloud-aws, чтобы посмотреть, как создается экземпляр объекта отображения Jackson, см. здесь: QueueMessagingTemplate.java.

Оказывается, что у него есть конструктор, который принимает в MessageConverter, так что вы можете сделать это:

@Configuration 
public class SpringAwsMessagingConfig { 

    @Bean 
    public QueueMessagingTemplate myMessagingTemplate(AmazonSQS amazonSqs, ResourceIdResolver resolver) { 
     ObjectMapper mapper = new ObjectMapper(); 
     // configure the Jackson mapper as needed 

     MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter(); 
     converter.setSerializedPayloadClass(String.class); 
     converter.setObjectMapper(mapper); 

     return new QueueMessagingTemplate(amazonSqs, resolver, converter); 
    } 

} 
Смежные вопросы