ann
          冰是沒有未來的,因為它的永恒
          posts - 107,comments - 34,trackbacks - 0
          1. spring中的配置文件
               
          <?xml version="1.0" encoding="UTF-8"?>
          <beans xmlns="http://www.springframework.org/schema/beans"
                 xmlns:xsi
          ="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:jms
          ="http://www.springframework.org/schema/jms"
                 xsi:schemaLocation
          ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                 http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-2.5.xsd">

              
          <!-- ***************************  連接openMQ server ******************************** -->
               
          <bean id="connectionfactoryfactory" class="com.fg114.customercenter.jms.factory.OpenMqConnectionFactory">
                  
          <property name="properties">
                      
          <props>
                          
          <prop key="imqAddressList">localhost:7676</prop>
                      
          </props>
                  
          </property>
               
          </bean>

               
          <bean id="connectionfactory" factory-bean="connectionfactoryfactory" factory-method="createConnectionFactory"/>

               
          <bean id="springconnectionfactory" class="org.springframework.jms.connection.SingleConnectionFactory">
                  
          <property name="targetConnectionFactory" ref="connectionfactory" />
               
          </bean>
               
               
          <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
                  
          <property name="connectionFactory" ref="springconnectionfactory" />
               
          </bean>

           
          <!-- ***************************  topic 和 queue TOPIC通道可以有消息消費者, QUEUE只能一個消息消費者******************************** -->
               
          <bean name="mytopic1" class="com.sun.messaging.Topic">
                   
          <constructor-arg type="java.lang.String" value="mytopic1"/>
               
          </bean>

               
          <bean name="mytopic2" class="com.sun.messaging.Topic">
                   
          <constructor-arg type="java.lang.String" value="mytopic2"/>
               
          </bean>

               
          <bean name="myqueue" class="com.sun.messaging.Queue">
                   
          <constructor-arg type="java.lang.String" value="myqueue"/>
               
          </bean>

             
          <!--*************************  有幾個MessageListener既有幾個MessageListenerContainer **********-->

              
          <bean name="topicListenerMytopic1" class="org.springframework.jms.listener.adapter.MessageListenerAdapter">
                  
          <constructor-arg ref="messageReceiver"/>
                  
          <property name="messageConverter" ref="springMessageConverter" />
                  
          <property name="defaultListenerMethod" value="receiveTopic"/>
              
          </bean>

              
          <bean id="topicListenerContainerMytopic1" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
                  
          <property name="connectionFactory" ref="springconnectionfactory" />
                  
          <property name="destination" ref="mytopic1" />
                  
          <property name="messageListener" ref="topicListenerMytopic1" />
              
          </bean>

               
          <bean name="topicListenerMytopic2"  class="org.springframework.jms.listener.adapter.MessageListenerAdapter">
                  
          <constructor-arg ref="messageReceiver"/>
                  
          <property name="messageConverter" ref="springMessageConverter" />
                  
          <property name="defaultListenerMethod" value="receiveTopic"/>
              
          </bean>

              
          <bean id="topicListenerContainerMytopic2"   class="org.springframework.jms.listener.DefaultMessageListenerContainer">
                  
          <property name="connectionFactory" ref="springconnectionfactory" />
                  
          <property name="destination" ref="mytopic2" />
                  
          <property name="messageListener" ref="topicListenerMytopic2" />
              
          </bean>

              
          <bean name="queueListenerMyqueue1" class="org.springframework.jms.listener.adapter.MessageListenerAdapter">
                  
          <constructor-arg ref="messageReceiver"/>
                  
          <property name="messageConverter" ref="springMessageConverter" />
                  
          <property name="defaultListenerMethod" value="receiveTopic"/>
              
          </bean>

              
          <bean id="queueListenerContainerMyqueue1"  class="org.springframework.jms.listener.DefaultMessageListenerContainer">
                 
          <property name="connectionFactory" ref="springconnectionfactory" />
                  
          <property  name="destination" ref="myqueue"/>
                  
          <property name="messageListener" ref="queueListenerMyqueue1" />
              
          </bean>

               
          <bean name = "springMessageConverter" class="org.springframework.jms.support.converter.SimpleMessageConverter"/>

          </beans>

           2. 接收
            
          /*
           * To change this template, choose Tools | Templates
           * and open the template in the editor.
           
          */

          package com.test.jms.receive;

          import com.test.jms.model.Customer;
          import java.io.Serializable;
          import javax.annotation.Resource;
          import javax.jms.Destination;
          import javax.jms.Topic;
          import org.springframework.stereotype.Component;
          /**
           *
           * 
          @author ann
           
          */
          @Component(value 
          = "messageReceiver")
          public class MessageReceiver {

              
          public void receive(String msg) {
                  System.out.println(msg);
              }

              
          public void receive(Serializable msg) {
                    
          if(msg instanceof Customer){
                        Customer c 
          = (Customer) msg;
                        System.out.println(
          "c = " + c.getName());
                    }
          else {
                         String s 
          = (String) msg;
                         System.out.println(
          "s = " + s);
                    }
              }

              
          public void receiveTopic(String msg){
                        
          //String s = (String) msg;
                         System.out.println("s = " + msg);

              }


          }
             

          3.發送
            
          /*
           * To change this template, choose Tools | Templates
           * and open the template in the editor.
           
          */

          package com.fg114.test.jms.service.impl;


          import java.io.Serializable;
          import javax.jms.Destination;
          import javax.jms.Topic;
          import org.springframework.stereotype.Component;
          import javax.annotation.Resource;
          import javax.jms.JMSException;
          import javax.jms.Message;
          import javax.jms.Session ;
          import org.springframework.jms.core.JmsTemplate;
          import org.springframework.jms.core.MessageCreator;

          /**
           *
           * 
          @author ann
           
          */
          //@Component
          public class MessageSendServiceImpl {

          //    @Resource(name = "jmsTemplate")
          //    private JmsTemplate jmsTemplate;
          //
          //    @Resource(name = "mytopic1")
          //    private Destination desctination;

              @Override
              
          public void sendString(String queueName, final String msg) {
          //        jmsTemplate.send(queueName, new MessageCreator() {
          //            public Message createMessage(Session session) throws JMSException {
          //                return session.createTextMessage(msg);
          //            }
          //        });
              }

              @Override
              
          public void sendObject(String queueName, final Serializable obj) {
          //        jmsTemplate.send(queueName, new MessageCreator() {
          //            public Message createMessage(Session session) throws JMSException {
          //                return session.createObjectMessage (obj);
          //            }
          //        });
              }

              
          public void sendTopic(final String message){
          //        jmsTemplate.send(desctination, new MessageCreator() {
          //            public Message createMessage(Session session) throws JMSException {
          //                return session.createTextMessage(message);
          //            }
          //        });
              }



          }
            







          posted on 2009-04-24 10:56 冰是沒有未來的,因為它的永恒 閱讀(1460) 評論(0)  編輯  收藏 所屬分類: java

          當下,把心放下 放下如果是可能的,那一定是在當下,
          不在過去,也不在未來。
          當下放下。唯有活在當下,你的問題才能放下。

          主站蜘蛛池模板: 石城县| 石渠县| 赞皇县| 泰州市| 昌江| 北海市| 湖州市| 仲巴县| 务川| 贵德县| 高碑店市| 无锡市| 赤峰市| 额尔古纳市| 白水县| 册亨县| 泸水县| 南宁市| 沂南县| 青冈县| 松原市| 庆阳市| 武汉市| 张家口市| 白朗县| 北安市| 铜川市| 尚志市| 绥阳县| 鄂伦春自治旗| 大安市| 长葛市| 临夏市| 黑山县| 巧家县| 星座| 顺义区| 土默特右旗| 云安县| 汨罗市| 佛冈县|