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

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

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

    空間站

    北極心空

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks

    從上周開始看websphere mq,從一無所知到現在終于有所了解,寫了個簡單的傳送消息代碼,
    我現在是通過在兩個隊列管理器間設置遠程隊列來進行消息傳遞的,
    這兩天寫了一個傳送一百多M文件的程序,
    還沒有在遠程機器上測試過,不知道傳送效果如何?
    先把傳送消息的代碼貼出來:

    /*==============================================================================<br>
    ?* 版權:? 版權所有 (c) 2004 - 2005<br>
    ?* 文件包:Message<br>
    ?* 所含類:<br>
    ?* 編寫人員:alaxing<br>
    ?* 創建日期:2004-10-23<br>
    ?* 功能說明:兩個MQ隊列管理器間進行消息傳送的簡單程序實現<br>
    ?* 更新記錄:<br>
    ?*? 日期????????? 作者?????????? 內容<br>
    ?* =============================================================================<br>
    ?*
    ?* ==============================================================================*/

    import com.ibm.mq.*;

    public class Message {

    ? private MQQueueManager qMgr;
    ? private MQQueue mqQueue;

    ? public Message() {

    ? }


    ? /**
    ?? * 從主機名為chenj1的MQ發送消息到主機名為linxf的MQ上
    ?? */
    ? public void putMsg() {
    ??? try {
    ????? //源方主機名
    ????? String hostName = "chenj1";
    ????? //源方服務器連接通道
    ????? String channel = "S_chenj1";
    ????? //源方隊列管理器
    ????? String qManager = "QM_chenj1";
    ????? //遠程隊列管理器 定義遠程隊列管理器為QM_linxf ,遠程隊列為file_linxf
    ????? String qName = "remote_chenj_linxf";

    ????? MQEnvironment.hostname = hostName;
    ????? MQEnvironment.channel = channel;
    ????? MQEnvironment.CCSID = 1381;
    ????? MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
    ?????? MQC.TRANSPORT_MQSERIES);
    ????? MQEnvironment.disableTracing();
    ????? MQException.log = null;

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

    ????? System.out.println("成功連接QueueManager");


    ????? int openOptions? =MQC.MQOO_OUTPUT | MQC.MQOO_FAIL_IF_QUIESCING;

    ????? mqQueue = qMgr.accessQueue(qName, openOptions);
    ????? MQPutMessageOptions mpmo = new MQPutMessageOptions();
    ????? MQMessage mqMessage = new MQMessage();
    ????? mqMessage.writeString(new java.util.Date().toString());
    ????? mqQueue.put(mqMessage, mpmo);
    ??? }
    ??? catch (MQException ex) {
    ????? System.out.println("Error Code : " + ex.reasonCode);
    ????? ex.printStackTrace();
    ??? }
    ??? catch (java.io.IOException ex) {
    ????? ex.printStackTrace();
    ??? }
    ??? finally {
    ????? try {
    ?if (mqQueue != null) {
    ?? mqQueue.close();
    ?? System.out.println("成功關閉Queue");
    ?}
    ?if (qMgr != null) {
    ?? qMgr.close();
    ?? qMgr.disconnect();
    ?? System.out.println("成功關閉、斷開QueueManager");
    ?}
    ????? }
    ????? catch (MQException ex) {

    ????? } //end try-catch

    ??? } //end try-catch

    ? }


    ? /**
    ?? * 從主機名為linxf的MQ上接收消息
    ?? */
    ? public void getMsg() {

    ??? try {
    ????? //接收方主機名
    ????? String hostName = "linxf";
    ????? //接收方服務器連接通道
    ????? String channel = "S_linxf";
    ????? //接收方隊列名稱
    ????? String qManager = "QM_linxf";
    ????? //接收方接收的本地隊列
    ????? String qName = "file_linxf";

    ????? MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,
    ?????? MQC.TRANSPORT_MQSERIES);
    ????? MQEnvironment.CCSID = 1381;
    ????? MQEnvironment.hostname = hostName;
    ????? MQEnvironment.channel = channel;

    ????? MQQueueManager qMgr = new MQQueueManager(qManager);
    ????? System.out.println("成功連接QueueManager");

    ????? int openOptions = MQC.MQOO_INPUT_SHARED | MQC.MQOO_FAIL_IF_QUIESCING;
    ????? mqQueue = qMgr.accessQueue(qName, openOptions);
    ????? 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 inMsg = new MQMessage();
    ????? mqQueue.get(inMsg, gmo);
    ????? String msg = inMsg.readString(inMsg.getMessageLength());
    ????? System.out.println("this message? is " + msg);
    ????? qMgr.commit();

    ??? }
    ??? catch (MQException ex) {
    ????? System.out.println("Error Code : " + ex.reasonCode);
    ????? ex.printStackTrace();
    ??? }
    ??? catch (java.io.IOException ex) {
    ????? ex.printStackTrace();
    ??? }
    ??? finally {
    ????? try {
    ?if (mqQueue != null) {
    ?? mqQueue.close();
    ?? System.out.println("成功關閉Queue");
    ?}
    ?if (qMgr != null) {
    ?? qMgr.close();
    ?? qMgr.disconnect();
    ?? System.out.println("成功關閉、斷開qMgr");
    ?}
    ????? }
    ????? catch (MQException ex) {

    ????? } //end try-catch

    ??? } //end try-catch

    ? }

    ? public static void main(String[] args) {
    ??? Message msg = new Message();
    ??? msg.putMsg();
    ??? msg.getMsg();
    ? }
    }



    Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=152448

    posted on 2006-12-15 20:18 蘆葦 閱讀(648) 評論(0)  編輯  收藏 所屬分類: JAVA其他
    主站蜘蛛池模板: 亚洲熟妇无码八V在线播放| 成年女人午夜毛片免费视频| MM1313亚洲精品无码久久| 久久亚洲日韩看片无码| 中文字幕无码精品亚洲资源网| 成人毛片18女人毛片免费| 真实国产乱子伦精品免费| 两性色午夜视频免费播放| 三年片在线观看免费观看大全中国 | 亚洲酒色1314狠狠做| 亚洲国产精品成人精品无码区| 男人的天堂亚洲一区二区三区 | 亚洲黄黄黄网站在线观看| 免费视频淫片aa毛片| 一二三四免费观看在线电影| 中文字幕在线免费| 色猫咪免费人成网站在线观看 | 国产aⅴ无码专区亚洲av| 亚洲精品国产精品乱码不卡| 免费人成年激情视频在线观看| 在线观看免费大黄网站| 蜜桃视频在线观看免费网址入口| 最近中文字幕免费完整| 57pao一国产成视频永久免费| 男的把j放进女人下面视频免费| 中国一级特黄的片子免费 | 亚洲精品无码激情AV| 亚洲国产精品成人| 亚洲国产成人VA在线观看| 哒哒哒免费视频观看在线www| 国产午夜免费福利红片| 免费人成视频在线观看视频| 免费乱理伦在线播放| 免费大香伊蕉在人线国产| 国产一区二区三区无码免费| 免费国产高清视频| 国产成人高清亚洲| 久久九九亚洲精品| 亚洲码一区二区三区| 国产亚洲精aa在线看| 亚洲av日韩av永久无码电影|