<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java Votary

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      48 隨筆 :: 1 文章 :: 80 評(píng)論 :: 0 Trackbacks

    對(duì)spring 了解的不夠精通,這兩天在解決jms異常的過程中發(fā)現(xiàn),spring中提供了jmsTrasactionManager,同樣實(shí)現(xiàn)了事務(wù)管理接口。這樣用 自動(dòng)的攔截器,就可以象數(shù)據(jù)庫一樣自動(dòng)控制事務(wù)。在同時(shí)配置了JMS和數(shù)據(jù)庫事務(wù)的時(shí)候,兩者同時(shí)有效。這樣系統(tǒng)的消息和數(shù)據(jù)庫事務(wù)就輕量級(jí)的一致了!

    數(shù)據(jù)庫的spring配置參見:http://steeven.cnblogs.com/archive/2005/06/14/174410.html
    jms部分如下:

        <bean id="remoteJmsConnectionFactory"
            class
    ="org.activemq.ActiveMQConnectionFactory">
            
    <property name="useEmbeddedBroker">
                
    <value>true</value>
            
    </property>
            
    <property name="brokerURL">
                
    <value>tcp://localhost:61616</value>
            
    </property>
        
    </bean>

        
    <bean id="jmsTM"
            class
    ="org.springframework.jms.connection.JmsTransactionManager">
            
    <property name="connectionFactory">
                
    <ref bean="remoteJmsConnectionFactory" />
            
    </property>
        
    </bean>

        
    <bean id="jmsTransactionInterceptor"
            class
    ="org.springframework.transaction.interceptor.TransactionInterceptor">
            
    <property name="transactionManager">
                
    <ref bean="jmsTM" />
            
    </property>
            
    <property name="transactionAttributeSource">
                
    <bean
                    
    class="org.springframework.transaction.annotation.AnnotationTransactionAttributeSource" />
            
    </property>
        
    </bean>

        
    <bean
            
    class="org.springframework.transaction.interceptor.TransactionAttributeSourceAdvisor">
            
    <property name="transactionInterceptor">
                
    <ref bean="jmsTransactionInterceptor" />
            
    </property>
        
    </bean>

        
    <bean id="destResolver"
            class
    ="test.message.EnumDestinationResolver" />

        
    <!-- for send jms to remote server -->
        
    <bean id="remoteJmsTemplate"
            class
    ="org.springframework.jms.core.JmsTemplate">
            
    <property name="connectionFactory">
                
    <ref bean="remoteJmsConnectionFactory" />
            
    </property>
            
    <property name="destinationResolver">
                
    <ref local="destResolver" />
            
    </property>
        
    </bean>

    應(yīng)用程序很簡(jiǎn)單
    @Transactional
    public class TestServiceImpl implements TestService {
        
    public void someMethod() {
            getJmsTemplate().send(someMessage);
        }

    }
    posted on 2005-12-13 23:49 Dion 閱讀(1389) 評(píng)論(0)  編輯  收藏 所屬分類: Springframework
    主站蜘蛛池模板: 卡1卡2卡3卡4卡5免费视频| 久热免费在线视频| 免费观看a级毛片| 亚洲一区在线免费观看| 91久久精品国产免费直播| 亚洲午夜久久影院| 亚洲日本在线免费观看| 亚洲性色成人av天堂| 亚洲一区二区三区免费在线观看| 亚洲伊人tv综合网色| 91久久精品国产免费直播| 亚洲AV成人无码天堂| 精品无码国产污污污免费| 国产成人高清亚洲一区久久| 亚洲福利精品电影在线观看| 国产免费人成视频在线播放播| 亚洲AV永久无码精品| **一级一级毛片免费观看| 亚洲专区一路线二| 国产人成免费视频| 9久热精品免费观看视频| 亚洲AV无一区二区三区久久| 18女人毛片水真多免费| 久久久久亚洲国产| 亚洲人成无码网站久久99热国产| 久久国产精品免费一区| 久久久久亚洲AV片无码下载蜜桃| 久久久久久国产a免费观看黄色大片 | 免费国产精品视频| 国产午夜无码片免费| 久久久无码精品亚洲日韩京东传媒| 丁香花免费完整高清观看| 亚洲AV色欲色欲WWW| 亚洲精品国产美女久久久| xxxxx免费视频| 国产精品亚洲а∨天堂2021| 国产亚洲免费的视频看| 成年女人午夜毛片免费视频| 一区二区三区免费看| 亚洲午夜国产精品无卡| 国产高清在线免费视频|