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) {}            }        }    }