往Websphere MQ 本地隊列中 放入消息和獲取消息

在訪問一個隊列首先需要獲取隊列管理器對象,

 
 

需要提供如下屬性信息,
: 隊列管理器名稱,端口號,服務通道,主機名稱,通過這些屬性就能獲取隊列管理器,

然後通過隊列管理器
訪問隊列,

放入消息
即可。
最後,關閉隊列。

 
 

下面是一個把消息
放入 WebSphere MQ 本地隊列中
程序代碼:

 
 

建立一個QueueManagerEntity實體:

如下:

Java代碼  

  1. private String queueManagerName;  
  2. private int port;  
  3. private String svrconn;  
  4. private String hostName;  
  5. private String queueName;  
  6.   
     
  7. / gettersetter方法省略…  

 
 

 
 

然後創建一個QueueManager Class,定義一個獲取MQQueueManager的方法,該方法主要是設置初始化環境信息。

Java代碼  

  1. public MQQueueManager getMQueueManager(QueueManagerEntity queueManagerEntity){  
  2.         MQEnvironment.channel = queueManagerEntity.getSvrconn();  
  3.         MQEnvironment.CCSID = 1383;  
  4.         MQEnvironment.hostname = queueManagerEntity.getHostName();  
  5.         MQEnvironment.port = queueManagerEntity.getPort();  
  6.         MQQueueManager queueManager = null;  
  7.         try {  
  8.             queueManager = new MQQueueManager(queueManagerEntity.getQueueManagerName());  
  9.         } catch (MQException e) {  
  10.             // TODO Auto-generated catch block  
  11.             e.printStackTrace();  
  12.         }  
  13.         return queueManager;  
  14.     }  

   //往本地隊列中放入測試消息。

Java代碼  

  1. public boolean sendMessage(MQQueueManager queueManager,QueueManagerEntity queueManagerEntity) throws IOException{  
  2.         boolean bol = false;  
  3.         int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT | MQC.MQOO_INQUIRE;  
  4.         if(queueManager==null || !queueManager.isConnected()){  
  5.             queueManager = getMQueueManager(queueManagerEntity);  
  6.         }  
  7.         MQQueue mqQueue = null;  
  8.         try {  
  9.             mqQueue = queueManager.accessQueue(queueManagerEntity.getQueueName(), openOptions,null,null,null);  
  10.             MQMessage mqMessage = new MQMessage();  
  11.             mqMessage.writeUTF(“Hello World!!!”);  
  12.               
     
  13.             MQPutMessageOptions mqPutMessageOptions = new MQPutMessageOptions();  
  14.             //往隊列中放入消息;  
  15.             mqQueue.put(mqMessage, mqPutMessageOptions);  
  16.             mqQueue.close();  
  17.             bol = true;  
  18.         } catch (MQException e) {  
  19.             // TODO Auto-generated catch block  
  20.             e.printStackTrace();  
  21.             bol = false;  
  22.         }  
  23.         return bol;  
  24.     }  

 
 

以下文章點擊率最高

Loading…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營