Java调用MQ队列

这篇博客展示了如何在Java应用中连接到IBM MQ 6.0的队列管理器XIR_QM_1502,使用队列ESBREQ进行消息发送和接收。程序创建了两个发送线程和一个接收线程,通过端口1414和CCSID 1208进行通信,所有消息成功发送和接收,并在完成时关闭队列。
摘要由CSDN通过智能技术生成

IBM MQ 6.0中设置两个队列,(远程队列、通道之类都不设置)。

队列管理器是XIR_QM_1502

队列名称是ESBREQ

IP地址是10.23.117.134(远程的一台电脑,跟我的电脑不在一个局域网内)

端口1414

CCSID 1208


MQ配置可以参考这个,有配图http://wenku.baidu.com/view/06d108d0360cba1aa811daa3.html

程序如下,发送线程两个,接收线程一个。接收完毕后就结束。


/*
 * 创建日期 2012-7-10
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package yerasel;

/**
 * @author Fenglb E-mail:56553655@163.com
 * @version 创建时间:2009-4-30 下午04:13:38 类说明
 */

import java.io.IOException;
import com.ibm.mq.MQC;
import com.ibm.mq.MQEnvironment;
import com.ibm.mq.MQException;
import com.ibm.mq.MQGetMessageOptions;
import com.ibm.mq.MQMessage;
import com.ibm.mq.MQPutMessageOptions;
import com.ibm.mq.MQQueue;
import com.ibm.mq.MQQueueManager;

interface SomeConstants {
	String qManager = "XIR_QM_1502";//"XIR_QM"; //QueueManager name
	String qName = "ESBREQ";// Queue Name
	String strIP = "10.23.117.134";//"10.24.28.139";//"10.24.28.102";
	int iPort = 1502;//1414;
	String strChl = "SYSTEM.DEF.SVRCONN";// Server-Connection Channel
	int iCCSID = 1208;
}

class Sender implements Runnable, SomeConstants {
	public void run() {
		sendMessage();
	}

	public void sendMessage() {

		String name = Thread.currentThread().getName();
		System.out.println("进入线程" + name);

		MQQueueManager qMgr = null;
		// configure connection parameters

		MQEnvironment.hostname = strIP;
		// Server name or IP
		MQEnvironment.port = iPort;
		MQEnvironment.channel = strChl;
		MQEnvironment.CCSID = iCCSID;

		// java程序连接mq的方式有两种,一是客户机方式,一是绑定方式,
		// 默认是客户机方式,当mq部署在本地的时候,就需要用绑定方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值