首页 > 代码库 > activemq 异步和同步接收
activemq 异步和同步接收
来点实在的代码,用例子来说明:
1.异步接收,主要设置messageListener。,然后编写onmessage方法,很简单
a.客户端发送5条消息
1 package ch02.chat; 2 3 import javax.jms.JMSException; 4 5 public class ClientTest3 { 6 7 public static void main(String[] args) throws JMSException { 8 // TODO Auto-generated method stub 9 JMSTopic jt=new JMSTopic();10 jt.setSession();11 //发送5个消息到queue212 for(int i=0;i<10;i++)13 {14 jt.writeMessage("queue2", "xo"+i,4);15 16 }17 18 19 }20 21 }
b.接收端接收5条消息
1 package ch02.chat; 2 3 import javax.jms.JMSException; 4 import javax.jms.Message; 5 import javax.jms.MessageListener; 6 import javax.jms.TextMessage; 7 8 public class ClientTest3Response { 9 10 11 public static void main(String[] args) throws JMSException {12 // TODO Auto-generated method stub13 JMSTopic jt=new JMSTopic();14 jt.setSession();15 16 //异步接收信息,监听queue217 18 System.out.println("异步接收前");19 20 21 22 jt.receiveMsg("queue2", new MessageListener() {23 24 @Override25 //当topic, queue2中有信息的时候26 public void onMessage(Message message) {27 28 TextMessage mm=(TextMessage)message;29 try {30 System.out.println("接收到信息"+mm.getText());31 } catch (JMSException e) {32 // TODO Auto-generated catch block33 e.printStackTrace();34 }35 36 }37 });38 39 System.out.println("异步接收后");40 41 }42 }
执行结果如下:
异步接收前
异步接收后
接收到信息xo0
接收到信息xo1
接收到信息xo2
接收到信息xo3
接收到信息xo4
接收到信息xo5
接收到信息xo6
接收到信息xo7
接收到信息xo8
接收到信息xo9
同步的以后再写好累。
activemq 异步和同步接收
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。