activeMQ学习第一天 hello word

##hello activeMQ
###下载 
  http://activemq.apache.org/components/classic/download/
  
> window下直接解压然后启动activemq.bat就行了  
> 访问直接地址localhost:8161 
![](https://i.imgur.com/OhX3MGj.png)

###maven项目
 引入jar包  

    <dependency>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-all</artifactId>
    <version>5.15.11</version>
    </dependency>  

创建sender  
     package activeMQ01;
    
    import javax.jms.Connection;
    import javax.jms.JMSException;
    import javax.jms.MessageProducer;
    import javax.jms.Queue;
    import javax.jms.Session;
    import javax.jms.TextMessage;
    
    import org.apache.activemq.ActiveMQConnectionFactory;
    
    public class Sender {
        public static void main(String[] args) throws JMSException {
            // 1。创建工厂类
            ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,
                    ActiveMQConnectionFactory.DEFAULT_PASSWORD,"tcp://localhost:61616");
            // 2、建立连接
            Connection connection = connectionFactory.createConnection();
            // 创建session对象
            Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
            
            // 发送消息到目的destinataion
            Queue queue = session.createQueue("user");
            // 创建消息提供者
            MessageProducer producer = session.createProducer(queue);
            for(int i=0;i<100;i++) {
                // 创建消息,并且存储内容
                TextMessage textMessage = session.createTextMessage();
                textMessage.setText("hello activeMQ======="+i);
                // 发送消息
                producer.send(textMessage);
            }
             // 关闭连接
        connection.close();
            System.out.println("消息发送成功");
        }
    
        
    } 
创建消息消费者  
    package activeMQ01;
    
    import javax.jms.Connection;
    import javax.jms.JMSException;
    import javax.jms.MessageConsumer;
    import javax.jms.Queue;
    import javax.jms.Session;
    import javax.jms.TextMessage;
    
    import org.apache.activemq.ActiveMQConnectionFactory;
    import org.apache.log4j.Logger;
    
    /**
     * 消息接收者
     * @author Administrator
     *
     */
    public class Receiver {
            private final static Logger logger = Logger.getLogger(Receiver.class);
        public static void main(String[] args)  {
            try {
                // 1。创建工厂类
                        ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(ActiveMQConnectionFactory.DEFAULT_USER,
                                ActiveMQConnectionFactory.DEFAULT_PASSWORD,"tcp://localhost:61616");
                        // 2、建立连接
                        Connection connection = connectionFactory.createConnection();
                        connection.start();
                        // 创建session对象
                        Session session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
                        Queue queue = session.createQueue("user");
                        // 创建消息消费者
                        MessageConsumer consumer = session.createConsumer(queue);
                        // 这里为了方便把消息消费完,直接写个死循环
                        while(true) {
                            // 因为 sender 是发送的文本类型,这里直接获取文本类型
                            TextMessage receive = (TextMessage) consumer.receive();
                            logger.error(receive.getText());
                        }
            } catch (JMSException e) {
                e.printStackTrace();
            }
        }

}

      






 

猜你喜欢

转载自www.cnblogs.com/916723764wl/p/12189167.html