白玉成的專欄

          Eclipse,讓我歡喜讓我憂!

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            17 隨筆 :: 0 文章 :: 6 評論 :: 0 Trackbacks
          發送器
          import com.ibm.mq.*
          public class Typesetter {
          public static void main(String args[]) {
          try
          {
          String hostName 
          = "ITSOG" ;
          String channel 
          = "JAVA.CLIENT.CHNL" ;
          String qManager 
          = "ITSOG.QMGR1" ;
          String qName 
          = "SAMPLE.QUEUE" ;

          /*設置MQEnvironment 屬性以便客戶機連接*/
          MQEnvironment.hostname 
          = hostName ;
          MQEnvironment.channel 
          = channel ;
          MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
          MQC.TRANSPORT_WEBSPHERE MQ);
          /*連接到隊列管理器*/
          MQQueueManager qMgr 
          = new MQQueueManager(qManager) ;

          /*設置打開選項以便打開用于輸出的隊列,如果隊列管理器正在停止,我們也已設置了選項去應對不成功情況。*/
          int openOptions = MQC.MQOO_OUTPUT | MQC.MQOO_FAIL_IF_QUIESCING ;

          /*打開隊列*/
          MQQueue queue 
          = qMgr.accessQueue(qName,
          openOptions,
          null,
          null,
          null);

          /*設置放置消息選項我們將使用默認設置*/
          MQPutMessageOptions pmo 
          = new MQPutMessageOptions();

          /*創建消息,MQMessage 類包含實際消息數據的數據緩沖區,和描述消息的所有MQMD 參數*/

          /*創建消息緩沖區*/
          MQMessage outMsg 
          = new MQMessage(); 

          /*設置MQMD 格式字段*/
          outMsg.format 
          = MQC.MQFMT_STRING ; 

          /*準備用戶數據消息*/
          String msgString 
          = "Test Message from PtpSender program "
          outMsg.writeString(msgString);

          /*在隊列上放置消息*/
          queue.put(outMsg, pmo);

          /*提交事務處理*/
          qMgr.commit();

          System.out.println(
          " The message has been Successfully put!\n");

          /*關閉隊列和隊列管理器對象*/
          queue.close();
          qMgr.disconnect();
          }

          catch (MQException ex)
          {
          System.out.println(
          "An MQ Error Occurred: Completion Code is :\t" +
          ex.completionCode 
          + "\n\n The Reason Code is :\t" + ex.reasonCode );
          ex.printStackTrace();
          }

          catch(Exception e) {
          e.printStackTrace();
          }
           
          }

          }


          接收器:
          import com.ibm.mq.* ;
          public class PtpReceiver {
          public static void main(String args[]) {
          try
          {
          String hostName 
          = "ITSOG" ;
          String channel 
          = "JAVA.CLIENT.CHNL" ;
          String qManager 
          = "ITSOG.QMGR1" ;
          String qName 
          = "SAMPLE.QUEUE" ;

          /設置 MQEnvironment 屬性以便客戶機連接*/
          MQEnvironment.hostname 
          = hostName ;
          MQEnvironment.channel 
          = channel ;

          MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
          MQC.TRANSPORT_WEBSPHERE MQ);

          /*連接到隊列管理器*/
          MQQueueManager qMgr 
          = new MQQueueManager(qManager) ;

          /*設置打開選項以便打開用于輸出的隊列,如果隊列管理器停止,我們也
          已設置了選項去應對不成功情況
          */

          int openOptions = MQC.MQOO_INPUT_SHARED |
             MQC.MQOO_FAIL_IF_QUIESCING ;

          /*打開隊列*/
          MQQueue queue 
          = qMgr.accessQueue(qName,
          openOptions,
          null,
          null,
          null);

          /*設置放置消息選項*/
          MQGetMessageOptions gmo 
          = new MQGetMessageOptions();

          /*在同步點控制下獲取消息*/
          gmo.options 
          = gmo.options + MQC.MQGMO_SYNCPOINT ; 

          /*如果在隊列上沒有消息則等待*/
          gmo.options 
          = gmo.options + MQC.MQGMO_WAIT ; 

          /*如果隊列管理器停頓則失敗*/
          gmo.options 
          = gmo.options + MQC.MQGMO_FAIL_IF_QUIESCING ; 

          /*設置等待的時間限制*/
          gmo.waitInterval 
          = 3000 ; 

          /*創建MQMessage 類*/
          MQMessage inMsg 
          = new MQMessage(); 

          /*從隊列到消息緩沖區獲取消息*/
          queue.get(inMsg, gmo) ;

          /*從消息讀取用戶數據*/
          String msgString 
          = inMsg.readString(inMsg.getMessageLength());
          System.out.println(
          " The Message from the Queue is : " + msgString);

          /*提交事務*/
          qMgr.commit();

          /*關閉隊列和隊列管理器對象*/
          queue.close();
          qMgr.disconnect();
          }

          catch (MQException ex)
          {
          System.out.println(
          "An MQ Error Occurred: Completion Code is :\t" +
          ex.completionCode 
          + "\n\n The Reason Code is :\t" + ex.reasonCode );
          ex.printStackTrace();
          }

          catch(Exception e) {
          e.printStackTrace();
          }

          }

          }

          posted on 2008-11-27 23:33 白玉成 閱讀(2518) 評論(0)  編輯  收藏 所屬分類: Websphere

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


          網站導航:
           
          主站蜘蛛池模板: 百色市| 麻城市| 饶河县| 钟山县| 文成县| 郁南县| 海盐县| 德格县| 日土县| 松桃| 宁乡县| 西畴县| 同心县| 永济市| 廊坊市| 夏津县| 吉林省| 黔西| 九寨沟县| 自治县| 边坝县| 漾濞| 安化县| 辽中县| 印江| 如皋市| 凤阳县| 宜章县| 文成县| 安福县| 沐川县| 闻喜县| 肥东县| 江陵县| 玉环县| 塔河县| 北辰区| 兰溪市| 盖州市| 克拉玛依市| 陵水|