往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…


发表评论

电子邮件地址不会被公开。 必填项已用*标注