ActiveMQ - tcp 协议发送消息
来源:互联网 发布:php curl跨域 编辑:程序博客网 时间:2024/05/16 00:47
/** * 基于tcp协议发送JMS消息 * @param args 参数 */ public static void main(String[] args) { ConnectionFactory connFactory; Connection conn = null; Session session; Destination destination; MessageProducer producer; try { connFactory = new ActiveMQConnectionFactory("tcp://127.0.0.1:61616"); conn = connFactory.createConnection("user1", "password1"); conn.start(); // 第一个参数为 false, 表示不使用事务 session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE); destination = session.createQueue(JMSInfo.QUEUE_NAME); // destination = session.createTopic(JMSInfo.TOPIC_NAME); producer = session.createProducer(destination); producer.setDeliveryMode(DeliveryMode.PERSISTENT); // send text message String text = "tcp text message 1."; TextMessage txtMsg = session.createTextMessage(text); producer.send(txtMsg); System.out.println("send: " + text); // send map message MapMessage mapMsg = session.createMapMessage(); mapMsg.setStringProperty("client-id", "client001"); mapMsg.setString("key1", "value1"); mapMsg.setString("key2", "value2"); producer.send(mapMsg); System.out.println("send: " + mapMsg); } catch (Exception e) { e.printStackTrace(); } finally { if (null != conn) { try { conn.close(); } catch (Exception e) {} } } }