ActiveMQ - stomp 프로토콜 메시지 보내기
2099 단어 activemq
/**
* stomp JMS
* @param args
*/
public static void main(String[] args) throws Exception
{
StompConnection conn = new StompConnection();
conn.open("127.0.0.1", 61613);
conn.connect("user1", "password1");
// send text message
HashMap<String, String> txtHeaders = new HashMap<String,String>();
txtHeaders.put(Stomp.Headers.Send.PERSISTENT, "true");
String text = "stomp text message 1.";
sendMessage(conn, text, txtHeaders);
System.out.println("send: " + text);
// send map message
HashMap<String, String> mapHeaders = new HashMap<String,String>();
mapHeaders.put(Stomp.Headers.Connect.CLIENT_ID, "client001");
mapHeaders.put(Stomp.Headers.Send.PERSISTENT, "true");
mapHeaders.put(Stomp.Headers.AMQ_MESSAGE_TYPE, "map");
mapHeaders.put(Stomp.Headers.TRANSFORMATION, "jms-stomp-map-json");
Map<String, String> map = new HashMap<String,String>();
map.put("key1", "value1");
map.put("key2", "value2");
String json = JsonUtils.toJson(map);
sendMessage(conn, json, mapHeaders);
System.out.println("send: " + json);
// disconnect
conn.disconnect();
}
/**
* JMS
* @param conn jms connection
* @param message message content
* @param headers message headers
* @throws Exception exception
*/
private static void sendMessage(
StompConnection conn, String message, HashMap<String, String> headers) throws Exception
{
String tx = UUID.randomUUID().toString().replaceAll("-", "");
conn.begin(tx);
conn.send(JMSInfo.STOMP_QUEUE_NAME, message, tx, headers);
// conn.send(JMSInfo.STOMP_TOPIC_NAME, message, tx, headers);
conn.commit(tx);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
activeMQ의 질문오늘은 mule로 activeMQ와 통합할 때, mule를 시작할 때 항상 activeMQ의 시작에 머물러 있습니다.원본 코드를 보니 active MQ에 사순환이 생겼습니다. 위의 코드에서dolock은 시종일관fal...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.