美文网首页
activemq点对点helloworld

activemq点对点helloworld

作者: zrjone | 来源:发表于2018-01-17 21:25 被阅读0次

    1.下载地址http://activemq.apache.org/ 可以选择不同的版本去下载

    2. 解压启动 在window下 不同的系统 去win32或win64的文件夹下点击 activemq.bat 

    启动浏览器输入http://127.0.0.1:8161/admin 进入

    默认用户名和密码都是admin 

     activemq点对点 hellowrold 

    生产者 

    public class JMSProducer {

    //默认连接用户名

        private static final StringUSERNAME = ActiveMQConnection.DEFAULT_USER;

        //默认连接密码

        private static final StringPASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;

        //默认连接地址

        private static final StringBROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;

        //发送的消息数量

        private static final int SENDNUM =10;

        public static void main(String[] args) {

    //连接工厂

            ConnectionFactory connectionFactory;

            //连接

            Connection connection =null;

            //会话 接受或者发送消息的线程

            Session session;

            //消息的目的地

            Destination destination;

            //消息生产者

            MessageProducer messageProducer;

            //实例化连接工厂

            connectionFactory =new ActiveMQConnectionFactory(JMSProducer.USERNAME, JMSProducer.PASSWORD, JMSProducer.BROKEURL);

            try {

    //通过连接工厂获取连接

                connection = connectionFactory.createConnection();

                //启动连接

                connection.start();

                //创建session  是否使用事务,设置自动确认

                session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);

                //创建一个名称为HelloWorld的消息队列

                destination = session.createQueue("HelloWorld");

                //创建消息生产者

                messageProducer = session.createProducer(destination);

                //发送消息

                sendMessage(session, messageProducer);

                session.commit();

            }catch (Exception e) {

    e.printStackTrace();

            }finally{

    if(connection !=null){

    try {

    connection.close();

                    }catch (JMSException e) {

    e.printStackTrace();

                    }

    }

    }

    }

    public static void sendMessage(Session session,MessageProducer messageProducer)throws Exception{

    for (int i =0; i < JMSProducer.SENDNUM; i++) {

    //创建一条文本消息

                TextMessage message = session.createTextMessage("ActiveMQ 发送消息" +i);

                System.out.println("发送消息:Activemq 发送消息" + i);

                //通过消息生产者发出消息

                messageProducer.send(message);

            }

    }

    }

    消费者

    public class JMSConsumer {

    private static final StringUSERNAME = ActiveMQConnection.DEFAULT_USER;//默认连接用户名

        private static final StringPASSWORD = ActiveMQConnection.DEFAULT_PASSWORD;//默认连接密码

        private static final StringBROKEURL = ActiveMQConnection.DEFAULT_BROKER_URL;//默认连接地址

        public static void main(String[] args) {

    ConnectionFactory connectionFactory;//连接工厂

            Connection connection =null;//连接

            Session session;//会话 接受或者发送消息的线程

            Destination destination;//消息的目的地

            MessageConsumer messageConsumer;//消息的消费者

            //实例化连接工厂

            connectionFactory =new ActiveMQConnectionFactory(JMSConsumer.USERNAME, JMSConsumer.PASSWORD, JMSConsumer.BROKEURL);

            try {

    //通过连接工厂获取连接

                connection = connectionFactory.createConnection();

                //启动连接

                connection.start();

                //创建session

                session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

                //创建一个连接HelloWorld的消息队列

                destination = session.createQueue("HelloWorld");

                //创建消息消费者

                messageConsumer = session.createConsumer(destination);

                while (true) {

    TextMessage textMessage = (TextMessage) messageConsumer.receive(100000);

                    if(textMessage !=null){

    System.out.println("收到的消息:" + textMessage.getText());

                    }else {

    break;

                    }

    }

    }catch (JMSException e) {

    e.printStackTrace();

            }

    }

    }

    相关文章

      网友评论

          本文标题:activemq点对点helloworld

          本文链接:https://www.haomeiwen.com/subject/gwqpoxtx.html