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

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

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

    Java Votary

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      48 隨筆 :: 1 文章 :: 80 評論 :: 0 Trackbacks

    對spring 了解的不夠精通,這兩天在解決jms異常的過程中發現,spring中提供了jmsTrasactionManager,同樣實現了事務管理接口。這樣用 自動的攔截器,就可以象數據庫一樣自動控制事務。在同時配置了JMS和數據庫事務的時候,兩者同時有效。這樣系統的消息和數據庫事務就輕量級的一致了!

    數據庫的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>

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

    }
    posted on 2005-12-13 23:49 Dion 閱讀(1389) 評論(0)  編輯  收藏 所屬分類: Springframework
    主站蜘蛛池模板: 亚洲精品亚洲人成在线| 亚洲午夜一区二区电影院| 亚洲人成依人成综合网| 亚洲精品成人图区| 亚洲性无码一区二区三区| 羞羞视频免费观看| 成在线人免费无码高潮喷水| 久久精品无码精品免费专区| 性xxxxx免费视频播放| 国产成人涩涩涩视频在线观看免费| 亚洲国产91精品无码专区| 久久国产精品亚洲综合| 亚洲一级毛片在线观| 国产成人亚洲综合无| 99视频在线免费观看| 亚洲国产精品免费观看| 亚洲精品无码激情AV| 亚洲最新永久在线观看| 亚洲欧洲AV无码专区| 美女被免费网站91色| 在线观看成人免费视频不卡| 国产一区二区三区在线免费观看| 亚洲日韩精品A∨片无码| 亚洲乱码无限2021芒果| 阿v视频免费在线观看| 99久热只有精品视频免费观看17| 免费国产黄线在线观看| 国产91精品一区二区麻豆亚洲| 亚洲美女激情视频| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 老司机福利在线免费观看| 久久国产精品免费视频| 免费黄网在线观看| 亚洲AV中文无码字幕色三| 亚洲色中文字幕在线播放| a级精品九九九大片免费看| 天天摸天天碰成人免费视频| 久久精品国产亚洲沈樵| 亚洲AV日韩综合一区| 免费A级毛片无码视频| 亚洲成a人片在线播放|