<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其他
    主站蜘蛛池模板: 国产精品无码永久免费888| 亚洲精品理论电影在线观看| 成年人免费视频观看| 亚洲综合婷婷久久| 国产亚洲精品VA片在线播放| 亚洲精品视频免费 | 无套内谢孕妇毛片免费看看| 在线看片免费人成视频播| 波多野结衣免费在线观看| 国产啪亚洲国产精品无码 | 亚洲日韩国产精品乱| 亚洲午夜电影在线观看| 1000部拍拍拍18勿入免费视频软件| 日韩亚洲AV无码一区二区不卡| 91短视频在线免费观看| 亚洲综合久久夜AV | 国产免费内射又粗又爽密桃视频 | a毛看片免费观看视频| 日本媚薬痉挛在线观看免费| mm1313亚洲国产精品无码试看| 日本特黄特色免费大片| 无遮挡国产高潮视频免费观看| 巨胸喷奶水视频www网免费| 亚洲av综合日韩| 中文字幕亚洲不卡在线亚瑟| 一级毛片不卡片免费观看| 亚洲成人激情小说| 国产v片免费播放| 亚洲色偷偷综合亚洲AV伊人蜜桃 | 99久久免费国产精精品| 水蜜桃亚洲一二三四在线| 免费无码精品黄AV电影| 边摸边吃奶边做爽免费视频99| 免费a级毛片高清视频不卡| 羞羞视频免费观看| 亚洲av丰满熟妇在线播放| 成年在线观看免费人视频草莓| 特级毛片在线大全免费播放| 内射干少妇亚洲69XXX| 免费v片在线观看品善网| 无码精品国产一区二区三区免费 |