使用jJmsTemlate发送json格式消息
时间: 2023-07-02 12:06:38 浏览: 43
可以使用以下代码使用 JmsTemplate 发送 JSON 格式的消息:
```
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.Session;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.core.MessageCreator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonMessageSender {
private JmsTemplate jmsTemplate;
public void setJmsTemplate(JmsTemplate jmsTemplate) {
this.jmsTemplate = jmsTemplate;
}
public void sendMessage(final Object jsonObject) throws JsonProcessingException {
final ObjectMapper mapper = new ObjectMapper();
final String jsonMessage = mapper.writeValueAsString(jsonObject);
jmsTemplate.send(new MessageCreator() {
public Message createMessage(Session session) throws JMSException {
return session.createTextMessage(jsonMessage);
}
});
}
}
```
在上述代码中,我们使用了 Jackson 库将 Java 对象转换为 JSON 字符串。然后,我们将 JSON 字符串设置为 JMS 文本消息的正文,并使用 JmsTemplate 发送该消息。
使用时,可以创建一个 JsonMessageSender 类的对象,并使用 setJmsTemplate() 方法注入 JmsTemplate 实例,然后调用 sendMessage() 方法发送 JSON 消息。例如:
```
JsonMessageSender sender = new JsonMessageSender();
sender.setJmsTemplate(jmsTemplate);
sender.sendMessage(jsonObject);
```
其中,`jmsTemplate` 是一个 JmsTemplate 实例,`jsonObject` 是要发送的 JSON 对象。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)