发送端:

  1. package com.ccl.app;  
  2.   
  3. import javax.jms.Destination;  
  4. import javax.jms.MessageProducer;  
  5. import javax.jms.Session;  
  6. import javax.jms.TextMessage;  
  7. import javax.jms.TopicConnection;  
  8. import javax.jms.TopicConnectionFactory;  
  9. import javax.jms.TopicSession;  
  10. import javax.naming.InitialContext;  
  11.   
  12. public class SendQueue {  
  13.   
  14.     /**  
  15.      * @param args  
  16.      */  
  17.     public static void main(String[] args) {  
  18.   
  19.         try {  
  20.   
  21.             InitialContext ctx = new InitialContext();  
  22.   
  23.             TopicConnectionFactory factory = (TopicConnectionFactory) ctx  
  24.                     .lookup("TopicConnectionFactory");  
  25.   
  26.             TopicConnection conn = factory.createTopicConnection();  
  27.   
  28.             Session session = conn.createSession(false,  
  29.                     TopicSession.AUTO_ACKNOWLEDGE);/* 建立不需要事务的并且能够自动确认已接收的会话 */  
  30.   
  31.             Destination destination = (Destination) ctx  
  32.                     .lookup("queue/jboossTopic");  
  33.   
  34.             MessageProducer producer = session.createProducer(destination);  
  35.   
  36.             TextMessage msg = session  
  37.                     .createTextMessage("hello java Message service of topic.");  
  38.   
  39.             producer.send(msg);  
  40.               
  41.             System.out.println(msg);  
  42.   
  43.         } catch (Exception e) {  
  44.             e.printStackTrace();  
  45.         }  
  46.   
  47.     }  
  48.   
  49. }  


接收端:

  1. package com.ccl.app.client;  
  2.   
  3. import javax.ejb.ActivationConfigProperty;  
  4. import javax.ejb.MessageDriven;  
  5. import javax.jms.JMSException;  
  6. import javax.jms.Message;  
  7. import javax.jms.MessageListener;  
  8. import javax.jms.TextMessage;  
  9.   
  10. @MessageDriven(activationConfig = {  
  11.         @ActivationConfigProperty(propertyName = "destinationType"propertyValue = "javax.jms.Topic"),  
  12.         @ActivationConfigProperty(propertyName = "destination"propertyValue = "queue/jboossTopic")  
  13.   
  14. })  
  15. public class MessageDrivenBean implements MessageListener {  
  16.   
  17.     @Override  
  18.     public void onMessage(Message mess) {  
  19.           
  20.         TextMessage msg = (TextMessage)mess;  
  21.           
  22.         try {  
  23.               
  24.             System.out.println(msg.getText());  
  25.               
  26.         } catch (JMSException e) {  
  27.             e.printStackTrace();  
  28.         }  
  29.   
  30.     }  
  31.   
  32. }  


作者:chengchanglun 发表于2012-4-9 14:56:42 原文链接
阅读:4649 评论:0 查看评论