zoukankan      html  css  js  c++  java
  • 3.activeMQ消息消费者

    • 第一种
      •   创建消费者类
      • import javax.jms.Connection;
        import javax.jms.ConnectionFactory;
        import javax.jms.Destination;
        import javax.jms.JMSException;
        import javax.jms.MessageConsumer;
        import javax.jms.Session;
        import javax.jms.TextMessage;
        
        import org.apache.activemq.ActiveMQConnection;
        import org.apache.activemq.ActiveMQConnectionFactory;
        /*
         * 消息消费
         */
        public class JMSConsumer {
            static String userName=ActiveMQConnection.DEFAULT_USER;
            static String password=ActiveMQConnection.DEFAULT_PASSWORD;
            static String brokerURL=ActiveMQConnection.DEFAULT_BROKER_URL;
            public static void main(String[] args) {
                ConnectionFactory connectionFactory=new ActiveMQConnectionFactory(userName, password, brokerURL);
                Connection connection = null ;
                Session session;// 会话,接受或发送消息的线程
                Destination destination;
                MessageConsumer messageConsumer;
                try {
                    connection=connectionFactory.createConnection();
                    connection.start();
                    session=connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                    destination=session.createQueue("FirstQueue");//创建连接的消息队列
                    messageConsumer=session.createConsumer(destination);
                    while(true){
                        TextMessage textMessage=(TextMessage) messageConsumer.receive(100000);//100000是100毫秒
                        if(textMessage!=null){
                            System.out.println(textMessage);
                            
                        }
                        else{
                            break;
                        }
                    }
                } catch (JMSException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                
            }
        
        }

        运行后显示

    •  第二种
    • 使用监听
    • import javax.jms.Connection;
      import javax.jms.ConnectionFactory;
      import javax.jms.Destination;
      import javax.jms.JMSException;
      import javax.jms.MessageConsumer;
      import javax.jms.Session;
      
      import org.apache.activemq.ActiveMQConnection;
      import org.apache.activemq.ActiveMQConnectionFactory;
      /*
       * 消息消费
       */
      public class JMSConsumer2 {
          static String userName=ActiveMQConnection.DEFAULT_USER;
          static String password=ActiveMQConnection.DEFAULT_PASSWORD;
          static String brokerURL=ActiveMQConnection.DEFAULT_BROKER_URL;
          public static void main(String[] args) {
              ConnectionFactory connectionFactory=new ActiveMQConnectionFactory(userName, password, brokerURL);
              Connection connection = null ;
              Session session;// 会话,接受或发送消息的线程
              Destination destination;
              MessageConsumer messageConsumer;
              try {
                  connection=connectionFactory.createConnection();
                  connection.start();
                  session=connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
                  destination=session.createQueue("FirstQueue1");//创建连接的消息队列
                  messageConsumer=session.createConsumer(destination);
                  messageConsumer.setMessageListener(new Listener());//注册消息监听
              } catch (JMSException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
              }
              while(true){
                  
              }
          }
      
      }

    • ps:后来好奇把while注释掉又跑了一下,又可以了,神奇啊神奇
    • 参考

      •   http://blog.csdn.net/littlechenlin/article/details/46659287
      •   http://blog.csdn.net/wscxyok/article/details/49299797
  • 相关阅读:
    Maven+JSP+Servlet+JDBC+Redis+Mysql实现的黑马旅游网
    Thymeleaf+SpringBoot+SpringDataJPA实现的中小医院信息管理系统
    Thymeleaf+SpringBoot+Mybatis实现的家庭财务管理系统
    JSP+Struts2+JDBC+Mysql实现的校园宿舍管理系统
    JSP+SSH+Mysql+C3P0实现的传智播客网上商城
    JSP+SSH+Mysql实现的学生管理系统
    JSP+Servlet+C3P0+Mysql实现的简单新闻系统
    笔记:EF出现列名 'Discriminator' 无效、类没有加入数据库上下文也被数据迁移生成表
    判断字符串中是否存在的几种方案:string.indexof、string.contains、list.contains、list.any几种方式效率对比
    Sql server 中关闭ID自增字段(SQL取消ID自动增长)
  • 原文地址:https://www.cnblogs.com/chen20135517/p/7761224.html
Copyright © 2011-2022 走看看