(1) ActiveMQ --HelloWorld

1.  下载ActiveMQ    ActiveMQ download

2.  启动ActiveMQ  
run *\activemq.bat

3.   测试
ActiveMQ默认使用的是TCP连接端口61616,所以我们可以查看该端口的使用情况,以便测试ActiveMQ是否成功启动   

C:\Documents and Settings\Administrator>netstat -an|find "61616" 
    TCP        0.0.0.0:61616                    0.0.0.0:0                            LISTENING


4.  监控ActiveMQ  
ActiveMQ5.0版本默认启动时,启动了内置的jetty服务器,提供一个demo应用和用于监控ActiveMQ的admin应用。
  • admin:http://127.0.0.1:8161/admin/ 
  • demo: http://127.0.0.1:8161/demo/

5.  java code

  • JmsSender

    package com.chbai.test;
    
    
    
    import org.apache.activemq.ActiveMQConnection; 
    import org.apache.activemq.ActiveMQConnectionFactory; 
    
    import javax.jms.*; 
    
    /**
     * JmsSender
     * @author chbai
     * This is first test for the JMS sender
     */
    public class JmsSender {
    
    	public static void main(String[] args) {
    		
    		 ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( 
                     ActiveMQConnection.DEFAULT_USER, 
                     ActiveMQConnection.DEFAULT_PASSWORD, 
                     "tcp://127.0.0.1:61616"); 
    		 
    		 try {
    			Connection connection = connectionFactory.createConnection();
    			connection.start();
    			
    			Session session = connection.createSession(Boolean.TRUE, Session.AUTO_ACKNOWLEDGE);
    			
    			Destination destination = session.createQueue("my-queue");
    			
    			MessageProducer producer = session.createProducer(destination);
    			producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
    			
    			sendMsg(session,producer);
    			
    			session.commit();
    			connection.close();
    			
    		} catch (JMSException e) {
    			e.printStackTrace();
    		}
    		 
    	}
    
    	private static void sendMsg(Session session, MessageProducer producer) throws JMSException {
    		TextMessage message = session.createTextMessage("Hello ActiveMQ!"); 
    		producer.send(message);
    		System.out.println("send ok!");
    	}
    
    }
    

  • JmsReceiver

    package com.chbai.test;
    
    
    import org.apache.activemq.ActiveMQConnection;
    import org.apache.activemq.ActiveMQConnectionFactory;
    
    import javax.jms.*;
    
    /**
     * JmsReceiver
     * @author chbai
     * This is first test for the jms receiver
     */
    public class JmsReceiver {
    
    	public static void main(String[] args) {
    
    		ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(
    				ActiveMQConnection.DEFAULT_USER,
    				ActiveMQConnection.DEFAULT_PASSWORD,
    				"tcp://127.0.0.1:61616");
    
    		Connection connection = null;
    		Session session = null;
    		try {
    			connection = connectionFactory.createConnection();
    			connection.start();
    			session = connection.createSession(Boolean.TRUE,Session.AUTO_ACKNOWLEDGE);
    			Destination destination = session.createQueue("my-queue");
    			
    			MessageConsumer consumer = session.createConsumer(destination);
    			while(true){
    				TextMessage message = (TextMessage) consumer.receive(1000);
    				if(null != message){
    					System.out.println("recieve msg: " + message.getText());
    				}
    				else{
    					break;
    				}
    			}
    			session.close();
    			connection.close();
    		} catch (JMSException e) {
    			e.printStackTrace();
    		}
    	}
    
    }
    



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值