閔毓
          http://www.eshoo.com.cn 歡迎來到異客中國
          posts - 49,comments - 97,trackbacks - 0

          JMS 簡介

          JMS即消息服務(wù),是能夠異步處理客戶請求的開發(fā)模型。為支持消息的異步處理,Java/J2EE平臺引入了JMS APIJMS支持兩種消息模型:點對點和發(fā)布/訂閱模式。

          JMS 抽象對象

          spring in action框架中jms相關(guān)包結(jié)構(gòu)看,主要包括如下內(nèi)容:

               org.springframework.jms:

               org.springframework.jms.connection:

               org.springframework.jms.core:

               org.springframework.jms.core.support:

               org.springframework.jms.support

               org.springframework.jms.support.converter:

               org.springframework.jms.support.destination

          發(fā)送消息

               JmsTemplate模板的使用:

               了解配置:

          <beans>

             <!—定義連接工廠-->

             <bean id=”connectionFactory” class=”org.springframework.jndi.JndiObjectFactoryBean”>

             <property name=”jndiName”>

                 <value>ConnectionFactory</value>

             </property>

          <property name=”jndiTemplate”>

              <ref  local=”jndiTemplate”/>

          </property>

          </bean>

          <!—定義目的地-->

             <bean id=”destination” class=”org.springframework.jndi.JndiObjectFactoryBean”>

               <property name=”jndiName”>

                 <value>queue/testQueue</value>

               </property>

          <property name=”jndiTemplate”>

              <ref  local=”jndiTemplate”/>

          </property>

          </bean>

          <!—jmsTemplate模板-->

          <bean id=”jmsTemplate” class=”org.springframework.jms.core.JmsTemplate”>

               <property name=”connectionFactory”>

                 <ref local=”connectionFactory”/>

               </property>

          <property name=”defaultDestination”>

              <ref  local=”destination”/>

          </property>

          </bean>

          <bean id=”jndiTemplate” class=”org.springframework.jms.jndi.JndiTemplate”>

               <property name=”environment”>

                 <props>

                       <prop key = “java.naming.factory.initial”>

                             Org.jnp.interfaces.NamingContextFactory

                       </prop>

                       <prop key = “java.naming.provider.url”>

                             Jnp://url

                       </prop>

                       <prop key = “java.naming.factory.url.pkgs”>

                             Org.jboss.naming:org.jnp.interfaces

                       </prop>

                 </props>

          </property>

          </bean>

          <beans>

          以上配置通過spring in action JNDI抽象服務(wù)中的org.springframework.jndi.JndiObjectFactoryBean獲得。最后定義同客戶應(yīng)用交互的jmsTemplate.org.springframework.jms.core.JmsTemplate,它將引用以上配置中的目的地和連接工廠。

          編寫客戶端代碼

          JmsTemplate Jt = (JmsTemplate)this.getBean();

          Jt.sent(new MessageCreator())

          {

             Public Message createMessage(Session session) throws JMSException{

             Return session.createTextMessge(“文本消息,queue/testQueue”);

             Log.info(“發(fā)送消息成功;”);

          }

          }

          spring in action框架提供的Jms抽象中,JmsTemplateMessageCreator結(jié)合能夠發(fā)送消息,因此需要實現(xiàn)MessageCreator回調(diào)接口定義的createMessage發(fā)法。

          posted on 2005-12-05 09:42 閔毓 閱讀(2260) 評論(0)  編輯  收藏 所屬分類: Spring in action
          主站蜘蛛池模板: 温州市| 平武县| 郁南县| 简阳市| 和林格尔县| 原阳县| 韩城市| 仁怀市| 靖州| 晋州市| 务川| 肇庆市| 安西县| 珠海市| 政和县| 长岭县| 呼图壁县| 惠水县| 博白县| 鹤岗市| 玉林市| 抚顺市| 团风县| 德阳市| 乌苏市| 溧阳市| 玉林市| 马尔康县| 黑山县| 乌兰浩特市| 海南省| 丘北县| 稻城县| 双柏县| 大竹县| 乐安县| 松阳县| 宁城县| 庄浪县| 罗定市| 南通市|