gpt4 book ai didi

java - Spring @JmsListener 无法将 json 转换为对象

转载 作者:行者123 更新时间:2023-12-05 07:42:26 25 4
gpt4 key购买 nike

我原以为@JmsListener 会自动将 json 对象转换为我的对象,但它的有效负载将数据作为 json 格式的字符串而不是实际对象返回。

    @JmsListener(destination = "${default-queue-name-to-listen}")
public void receiveMessage(final Message<MyObject> message) throws JMSException {
logger.info("message received from the queue/topic : {}", message);
MyObject response = message.getPayload();
}

但我们收到的响应是这样的字符串格式:{"id":"1","name":"2222"}

这在运行时失败了。

我的另一段代码是:

@Bean
public JmsListenerContainerFactory jmsListenerContainerFactory(ConnectionFactory connectionFactory) throws URLSyntaxException {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
factory.setConnectionFactory(connectionFactory);
factory.setSubscriptionDurable(true);
factory.setPubSubDomain(true);
return factory;
}

最佳答案

这取决于生产者发送的内容。

如果发送了文本消息,您会得到一个字符串。如果发送了一个对象消息,您可以获得一个对象。

关于java - Spring @JmsListener 无法将 json 转换为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44539599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com