隨筆 - 8, 文章 - 0, 評論 - 4, 引用 - 0
          數據加載中……

          轉:Message Driven POJO

          作者:江南白衣 
            
              一直希望那些J字頭的協議能有幾個提前告老還鄉的,好減輕一下我們的負擔,特別是這WebService滿天飛的時代。但似乎還有很久都輪不到JMS的消失:

              1.因為
              1.它是《Effective Enterprise Java》的一個實踐。 
              可以把不影響用戶執行結果又比較耗時的任務(比如發郵件通知管理員)異步的扔給JMS 服務端去做,而盡快的把屏幕返還給用戶。
              而且服務端能夠多線程排隊響應--高并發的請求。

              2. 可以在Java世界里達到最高的解耦。
                 對比WebService,JMS的客戶端與服務端無需直連,甚至無需知曉對方是誰、在哪里、有多少人,只要對流過的信息作響應就行了。對牽一發動全身的企業應用來說很輕省。
                 
               2. 但是
               1. Message Bean帶著EJB系的榮光,步驟比較繁雜,你需要實現MessageDrivenBean、MessageListener接口,還需要設置EJB的配置信息,然后是deploy....

               2. Spring 1.x 提供的JMS Template簡化了JMS Client端的編程,但并沒有涉及到服務端的改造。

               3. 所以,SpringSide的Message Driven POJO方案

                Spring JMS Template + ActiveMQ + Jencks

          1. 它是Lightweight的,基本上只是普通POJO,不用搞太多東西。

          2. 它是Spring Base的,可以使用Spring的各種特性如IOC、AOP。

          3. 它是Effective的,基于Jencks的JCA Container實現 pool connection,control transactions and manage security。

          4. 但它是withdout EJB Container的。

          其實它還不是100% POJO,除非再用上Lingo,但我已不想走得太遠。

          4.黃金版配置
                如果你想找一個ActiveMQ 3.2 Stable版+Spring的100%可行的配置文件,估計只能到SpringSide項目里看了。網上的文章,不是已過時,就是不切題。

               推薦中英兩份最接近的文檔:
               捷特慈朋(IDEA中國): Spring和Message Bean的整合
               Spring loaded:  Message-Driven POJOs 

               不過它們都有個outdate的地方--ActiveMQ3.2開始不再自帶JCA Cotainer了,而是將其與Gernimo 合作而成了Jencks,需另外安裝。

           5.SpringSide旅游指南

                pom.xml里的JMS部分 --所需的依賴包。
                applicationContext-jms.xml --黃金版配置文件。
                activemq.xml  --AcitveMQ Broker配置文件。
                OrderPlaceMDP.java --Message Driven Pojo。
                JmsTest.java --單元測試用例。
                OrderManger.java的NodifyOrder()函數 --實際應用的地方。 

           POJO太簡單,唯一麻煩的配置文件已注釋,這里也就無話了。

          posted on 2009-02-11 09:52 Pitey 閱讀(261) 評論(0)  編輯  收藏 所屬分類: Spring


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 繁峙县| 兴化市| 阳山县| 贵德县| 遵义县| 攀枝花市| 滕州市| 荥阳市| 囊谦县| 舞阳县| 兴业县| 常德市| 封开县| 鄂州市| 祥云县| 丰都县| 烟台市| 北票市| 新疆| 彭水| 图木舒克市| 伊春市| 普洱| 全南县| 麻阳| 黄山市| 西和县| 无棣县| 临洮县| 乌拉特中旗| 平山县| 澄迈县| 岗巴县| 乐亭县| 宜章县| 蓬安县| 塔城市| 鹿泉市| 清苑县| 延庆县| 克拉玛依市|