点击这里给我发消息 点击这里给我发消息

java 中使用websphere MQ

添加时间:2013-12-7
    相关阅读: Access 平台
    java 中使用websphere

    websphere mq  : 用于传输信息 具有跨平台的功能。
1 安装websphere mq 并启动
2 websphere mq 建立 queue Manager (如:MQSI_SAMPLE_QM)
3 建立queue 类型选择 Local类型 的 (如lq  )
3 建立channels 类型选择Server Connection (如BridgeChannel)


    java 代码如下:


package test.mq;

import com.ibm.mq.*;

/*
 * 成功的访问mq 的java 类
 */
public class FirstMqTest {
//    public static void main(String[] args[]){
//        FirstMqTest first = new FirstMqTest();
//        first.test();
//    }
    public static void main(String args[]){
        FirstMqTest first = new FirstMqTest();
        first.test();
        
    }
    public void test(){
        String qManager = "MQSI_SAMPLE_QM"; //QueueManager name
          String qName = "lq";//Queue Name
          try {
                    //configure connection parameters
                    MQEnvironment.hostname="172.16.17.123";//MQ Server name or IP
                    //MQEnvironment.port=1414;//listenr port
                    MQEnvironment.channel="BridgeChannel";//Server-Connection Channel
                    MQEnvironment.CCSID =1381;
                    // Create a connection to the QueueManager
                    System.out.println("Connecting to queue manager: "+qManager);
                    MQQueueManager qMgr = new MQQueueManager(qManager);
                    // Set up the options on the queue we wish to open 
                    int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT;
                    // Now specify the queue that we wish to open and the open options
                    System.out.println("Accessing queue: "+qName);
                    MQQueue queue = qMgr.accessQueue(qName, openOptions);
                    // Define a simple WebSphere MQ Message ... 
                    MQMessage msg = new MQMessage();
                    // ... and write some text in UTF8 format
                    msg.writeUTF("Hello, World!");
                    // Specify the default put message options
                    MQPutMessageOptions pmo = new MQPutMessageOptions();
                    // Put the message to the queue
                    System.out.println("Sending a message...");
                    
                    /*
                     * 在此测试一下 mq 的传输次列
                     * 
                     */
                     for(int j=0;j<5;j++){
                         String str ="test11111111111";
                         str = str+j;
                         msg.writeUTF(str);
                         queue.put(msg, pmo);
                     }
                    queue.put(msg, pmo);
                    // Now get the message back again. First define a WebSphere MQ message 
                    // to receive the data 
                    MQMessage rcvMessage = new MQMessage();
                    
                    // Specify default get message options 
                    MQGetMessageOptions gmo = new MQGetMessageOptions();
                    // Get the message off the queue.
                    System.out.println("...and getting the message back again");
                    queue.get(rcvMessage, gmo);
                    // And display the message text...
                    String msgText = rcvMessage.readUTF();
                    System.out.println("The message is: " + msgText);
                    // Close the queue
                    System.out.println("Closing the queue");
                    queue.close();
                    // Disconnect from the QueueManager
                    System.out.println("Disconnecting from the Queue Manager");
                    qMgr.disconnect();
                    System.out.println("Done!");
                }
                catch (MQException ex) {
                    System.out.println("A WebSphere MQ Error occured : Completion Code "
                            + ex.completionCode + " Reason Code " + ex.reasonCode);
                }
                catch (java.io.IOException ex) {
                    System.out.println("An IOException occured whilst writing to the message buffer: "
                            + ex);
                }

    }
}
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册