国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|C/C++|

服務器之家 - 編程語言 - JAVA教程 - ActiveMQ簡單入門(新手必看篇)

ActiveMQ簡單入門(新手必看篇)

2020-11-06 21:08Java之家 JAVA教程

下面小編就為大家帶來一篇ActiveMQ簡單入門(新手必看篇)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一、創建一個簡單的Hello World案例

首先需要導入activemq-all-5.14.5.jar包,寫生產端:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.ietree.mq.helloworld;
 
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.DeliveryMode;
import javax.jms.Destination;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
 
import org.apache.activemq.ActiveMQConnectionFactory;
 
public class Sender {
  public static void main(String[] args) throws Exception {
    // 第一步:建立ConnectionFactory工廠對象,需要填入用戶名、密碼、以及要連接的地址,均使用默認即可,默認端口為:tcp://localhost:61616
    ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,
        ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://localhost:61616");
 
    // 第二步:通過ConnectionFactory工廠對象我們創建一個Connection鏈接,并且調用ConnectionFactory的start方法開啟鏈接,Connection默認是關閉的
    Connection connection = connectionFactory.createConnection();
    connection.start();
 
    // 第三步:通過Connection對象創建Session會話(上下文環境對象),用于接收消息,參數配置1為是否啟用事務,參數配置2為簽收模式,一般我們設置為自動簽收
    Session session = connection.createSession(Boolean.FALSE, Session.AUTO_ACKNOWLEDGE);
 
    // 第四步:通過Session創建Destination對象,指的是一個客戶端用來指定生產消息目標和消費信息來源的對象,在PTP模式中,Destination被稱作Queue即隊列;在Pub/Sub模式,Destination被稱作Topic即主題。在程序中可以使用多個Queue和Topic。
    Destination destination = session.createQueue("queue1");
 
    // 第五步:我們需要通過Session對象創建消息的發送和接收對象(生產者和消費者)MessageProducer/MessageConsumer。
    MessageProducer messageProducer = session.createProducer(destination);
 
    // 第六步:我們可以使用MessageProducer的setDeliveryMode方法為其設置持久化特性和非持久化特性(DeliveryMode)
    messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
 
    // 第七步:最后我們使用JMS規范的TextMessage形式創建數據(通過Session對象),并用MessageProducer的send方法發送數據。同理,客戶端使用receive方法進行接收數據,最后需要關閉Connection連接。
    for (int i = 0; i < 5; i++) {
      TextMessage textMessage = session.createTextMessage();
      textMessage.setText("我是消息內容......" + i);
      messageProducer.send(textMessage);
      System.out.println("生產者:" + textMessage.getText());
    }
 
    if (connection != null) {
      connection.close();
    }
  }
}

寫消費端:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.ietree.mq.helloworld;
 
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.Destination;
import javax.jms.MessageConsumer;
import javax.jms.Session;
import javax.jms.TextMessage;
 
import org.apache.activemq.ActiveMQConnectionFactory;
 
public class Receiver {
 
  public static void main(String[] args) throws Exception {
    // 第一步:建立ConnectionFactory工廠對象,需要填入用戶名、密碼、以及要連接的地址,均使用默認即可,默認端口為:tcp://localhost:61616
    ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,
        ActiveMQConnectionFactory.DEFAULT_PASSWORD, "tcp://localhost:61616");
 
    // 第二步:通過ConnectionFactory工廠對象我們創建一個Connection鏈接,并且調用ConnectionFactory的start方法開啟鏈接,Connection默認是關閉的
    Connection connection = connectionFactory.createConnection();
    connection.start();
 
    // 第三步:通過Connection對象創建Session會話(上下文環境對象),用于接收消息,參數配置1為是否啟用事務,參數配置2為簽收模式,一般我們設置為自動簽收
    Session session = connection.createSession(Boolean.FALSE, Session.AUTO_ACKNOWLEDGE);
 
    // 第四步:通過Session創建Destination對象,指的是一個客戶端用來指定生產消息目標和消費信息來源的對象,在PTP模式中,Destination被稱作Queue即隊列;在Pub/Sub模式,Destination被稱作Topic即主題。在程序中可以使用多個Queue和Topic。
    Destination destination = session.createQueue("queue1");
 
    // 第五步:我們需要通過Session對象創建消息的發送和接收對象(生產者和消費者)MessageProducer/MessageConsumer。
    MessageConsumer messageConsumer = session.createConsumer(destination);
    
    while (true) {
      TextMessage msg = (TextMessage) messageConsumer.receive();
      if(msg == null){
        break;
      }
      System.out.println("接收到的內容:" + msg.getText());
    }
 
    if (connection != null) {
      connection.close();
    }
  }
}

通過http://localhost:8161/admin/queues.jsp路徑查看消息消費情況。

二、ActiveMQ 安全機制

activeMQ的Web管理界面:http://127.0.0.1:8161/admin
activeMQ管控臺使用jetty部署,所以需要修改密碼則需要到相應的配置文件:apache-activemq-5.14.5\conf\jetty-realm.properties

activeMQ應該設置有安全機制,只有符合認證的用戶才能進行發送和獲取消息,所以我們也可以在activemq.xml里添加安全驗證配置,apache-activemq-5.14.5\conf\jetty-realm.properties\activemq.xml,在123行之后添加一個插件配置即可。

以上這篇ActiveMQ簡單入門(新手必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 91精品视频免费在线观看 | 九九热视频在线观看 | 亚洲电影在线 | 羞羞免费视频网站 | 国产精品爱久久久久久久 | 亚洲国产精品成人 | 精品96久久久久久中文字幕无 | 国产精品一区久久久 | 午夜高清视频 | av私库在线观看 | 日本亚洲欧美 | 人人澡人人透人人爽 | 国产成人在线一区二区 | 日韩在线国产精品 | 成人影音 | 欧美精品一区二区三区四区 | 日韩一二三区 | 久久中文视频 | 国产日韩一区二区 | av集中淫 | 久久精品无码一区二区三区 | 亚洲国产精品久久久 | 国产精品网站在线观看 | 欧美日韩第一页 | 欧美精品在线播放 | 国产精品亚洲综合 | 日韩精品一区二区三区免费视频 | 久久一区| 国产精品视屏 | 美女扒开尿口来摸 | 国产中文字幕一区 | 欧美视频一区 | 国产精品久久久久久久9999 | 日韩欧美在线一区 | 日本精品视频一区二区 | 狠狠躁夜夜躁人人爽天天天天97 | 久久99精品久久久久久久 | 亚洲精品电影在线观看 | 北条麻妃在线一区二区三区 | 黄色小视频在线观看 | 亚洲 精品 综合 精品 自拍 |