ActiveMQ簡單使用
阿新 • • 發佈:2018-07-17
sys ack art create 關閉資源 div read ssi star
// 第一步:創建ConnectionFactory對象,需要指定服務端ip及端口號。 //brokerURL服務器的ip及端口號 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.25.168:61616"); // 第二步:使用ConnectionFactory對象創建一個Connection對象。 Connection connection = connectionFactory.createConnection(); // 第三步:開啟連接,調用Connection對象的start方法。 connection.start(); // 第四步:使用Connection對象創建一個Session對象。 //第一個參數:是否開啟事務。true:開啟事務,第二個參數忽略。 //第二個參數:當第一個參數為false時,才有意義。消息的應答模式。1、自動應答2、手動應答。一般是自動應答。 Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); // 第五步:使用Session對象創建一個Destination對象(topic、queue),此處創建一個Queue對象。 //參數:隊列的名稱。 Queue queue = session.createQueue("test-queue"); // 第六步:使用Session對象創建一個Producer對象。 MessageProducer producer = session.createProducer(queue); // 第七步:創建一個Message對象,創建一個TextMessage對象。 /*TextMessage message = new ActiveMQTextMessage(); message.setText("hello activeMq,this is my first test.");*/ TextMessage textMessage = session.createTextMessage("hello activeMq,this is my first test."); // 第八步:使用Producer對象發送消息。 producer.send(textMessage); // 第九步:關閉資源。 producer.close(); session.close(); connection.close();
// 第一步:創建一個ConnectionFactory對象。 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.25.168:61616"); // 第二步:從ConnectionFactory對象中獲得一個Connection對象。 Connection connection = connectionFactory.createConnection(); // 第三步:開啟連接。調用Connection對象的start方法。 connection.start(); // 第四步:使用Connection對象創建一個Session對象。 Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); // 第五步:使用Session對象創建一個Destination對象。和發送端保持一致queue,並且隊列的名稱一致。 Queue queue = session.createQueue("test-queue"); // 第六步:使用Session對象創建一個Consumer對象。 MessageConsumer consumer = session.createConsumer(queue); // 第七步:接收消息。 consumer.setMessageListener(new MessageListener() { @Override public void onMessage(Message message) { try { TextMessage textMessage = (TextMessage) message; String text = null; //取消息的內容 text = textMessage.getText(); // 第八步:打印消息。 System.out.println(text); } catch (JMSException e) { e.printStackTrace(); } } }); //等待鍵盤輸入 System.in.read(); // 第九步:關閉資源 consumer.close(); session.close(); connection.close();
ActiveMQ簡單使用