精华内容
下载资源
问答
  • Java连接MQ的实例
    2021-03-12 10:46:06

    package cjf.mq.mqclient;

    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;

    import com.ibm.mq.MQGetMessageOptions;

    public class MQClient {

    static MQQueueManager qMgr;

    static int CCSID = 1381;//WINGBK,1208:UTF-8

    static String queueString = "MQ_QUEUE";

    public static void connect() throws MQException {

    MQEnvironment.hostname = "";

    MQEnvironment.channel = "java.channel";

    MQEnvironment.port = 1321;

    MQEnvironment.CCSID = CCSID;

    qMgr = new MQQueueManager("MQ_TEST");

    qMgr.disconnect();

    }

    public static void sendMsg(String msgStr) {

    int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT

    | MQC.MQOO_INQUIRE;

    MQQueue queue = null;

    try {

    // 建立Q1通道的连接

    queue = qMgr

    .accessQueue(queueString, openOptions, null, null, null);

    MQMessage msg = new MQMessage();// 要写入队列的消息

    msg.format = MQC.MQFMT_STRING;

    msg.characterSet = CCSID;

    msg.encoding = CCSID;

    // msg.writeObject(msgStr); //将消息写入消息对象中

    msg.writeString(msgStr);

    MQPutMessageOptions pmo = new MQPutMessageOptions();

    msg.expiry = -1; // 设置消息用不过期

    queue.put(msg, pmo);// 将消息放入队列

    } catch (Exception e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } finally {

    if (queue != null) {

    try {

    queue.close();

    } catch (MQException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    }

    public static void receiveMsg() {

    int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT

    | MQC.MQOO_INQUIRE;

    MQQueue queue = null;

    try {

    queue = qMgr

    .accessQueue(queueString, openOptions, null, null, null);

    System.out.println("该队列当前的深度为:" + queue.getCurrentDepth());

    System.out.println("===========================");

    int depth = queue.getCurrentDepth();

    // 将队列的里的消息读出来

    while (depth-- > 0) {

    MQMessage msg = new MQMessage();// 要读的队列的消息

    MQGetMessageOptions gmo = new MQGetMessageOptions();

    queue.get(msg, gmo);

    System.out.println("消息的大小为:" + msg.getDataLength());

    System.out.println("消息的内容:\n"

    + msg.readLine());

    System.out.println("---------------------------");

    }

    } catch (Exception e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } finally {

    if (queue != null) {

    try {

    queue.close();

    } catch (MQException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    }

    }

    public static void main(String[] args) throws MQException {

    connect();

    sendMsg("fuck MQ");

    receiveMsg();

    }

    }

    更多相关内容
  • JAVA连接IBM MQ代码

    2019-01-25 11:34:27
    JAVA连接IBM MQ,具体的详细说明,请再csdn上面搜索JAVA连接IBM MQ关键词
  • IBM MQ经常被一些政府公共部门,银行等企业用来做数据传输和报文收发,在互联网应用的开发中较少见到,资源为MQjava 代码
  • 此包是总包,包含java连接IBMMQ所需要的所有类。直接引入就可以编写ibmmq代码,无需添加其他依赖。
  • 描述了java程序代码去访问MQ的SSL加密的通道。如何配置JKS,如何配置MQ服务器的SSL秘钥库,如何配置证书制作证书和秘钥库。主要是如何编写java代码去访问SSL通道并取到数据。
  • JAVA发送接收MQ代码示例

    万次阅读 2017-04-16 13:06:11
    上几篇关于MQ的博客里,并没有介绍的透彻,今天我把用到的类整理到里一起,集成了监视、查找、发送、接收、保存报文的功能。首先,新建TemoteTest类申明: private static MQQueueManager qMgr; // 队列管理器名称 ...

    上几篇关于MQ的博客里,并没有介绍的透彻,今天我把用到的类整理到里一起,集成了监视、查找、发送、接收、保存报文的功能。

    首先,新建TemoteTest类

    申明:

    	private static MQQueueManager qMgr; // 队列管理器名称
    	private static MQQueue qQueue; // 消息通道
    	private static String Q_MANAGER; // QueueManager名
    	private static String HOST_NAME; // 主机名
    	private static int PORT; // 端口号
    	private static String MQ_NAME; // 本地队列
    	private static String CHANNEL; // 连接通道
    	private static int CCSID; // 字符集
    
    	public static String dir = "C:/Users/admin/Desktop/远程测试报文/";
    

    在桌面新建一个名为【远程测试报文】的文件夹,作为数据源。

    	/**
    	 * 循环所有文件发送
    	 * @param pa
    	 * @throws Exception
    	 */
    	public static void search(File pa) throws Exception
    	{
    		File[] fs = pa.listFiles();
    		for (int i = 0; i < fs.length; i++)
    		{
    			if (fs[i].isDirectory())
    			{
    				search(fs[i]);
    			}
    			StringBuffer sb = new StringBuffer();
    			Reader rd = null;
    			try
    			{
    				rd = new FileReader(fs[i]);
    			} catch (FileNotFoundException e)
    			{
    				e.printStackTrace();
    			}
    			char[] cr = new char[20348];
    			try
    			{
    				while (rd.read(cr) > -1)
    				{
    					sb.append(new String(cr));
    				}
    			} catch (IOException e)
    			{
    				e.printStackTrace();
    			}
    			sendMsg(sb.toString());
    		}
    	}
    

    在这个方法中,将文件夹里所有文件都拿到,并将它读成字符串,再调用sendMsg()方法。

    关于MQ初始化的方法:

    	/**
    	 * 初始化
    	 */
    	private static void init()
    	{
    		Properties prop = new Properties();
    		InputStream is = RemoteTest.class.getResourceAsStream("/constant.properties");
    		try
    		{
    			prop.load(is);
    			Q_MANAGER = prop.getProperty("Q_MANAGER").trim();
    			HOST_NAME = prop.getProperty("HOST_NAME").trim();
    			PORT = Integer.parseInt(prop.getProperty("PORT").trim());
    			MQ_NAME = prop.getProperty("MQ_NAME").trim();
    			CHANNEL = prop.getProperty("CHANNEL").trim();
    			CCSID = Integer.parseInt(prop.getProperty("CCSID").trim());
    
    			MQEnvironment.hostname = HOST_NAME;
    			MQEnvironment.port = PORT;
    			MQEnvironment.channel = CHANNEL;
    			MQEnvironment.CCSID = CCSID;
    
    			qMgr = new MQQueueManager(Q_MANAGER);
    			int qOptioin = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_INQUIRE | MQC.MQOO_OUTPUT;
    			qQueue = qMgr.accessQueue(MQ_NAME, qOptioin);
    		} catch (IOException e)
    		{
    			e.printStackTrace();
    		} catch (MQException e)
    		{
    			e.printStackTrace();
    		}
    	}
    

    这里可以直接把这些常量写死,不过不建议这样做。
    如果在同一台机器上测试,ip可以填写127.0.0.1
    在我的机器上它是这样子的:

    #队列管理器名称
    Q_MANAGER = SEND
    #主机
    HOST_NAME = 127.0.0.1
    #端口
    PORT = 1414
    #队列
    MQ_NAME = QUEUE
    #通道
    CHANNEL = CHANNEL
    CCSID = 1383
    

    发送消息的方法:

    	/**
    	 * 发送消息
    	 */
    	public static void sendMsg(String msgStr)
    	{
    		try
    		{
    			init();
    			MQMessage qMsg = new MQMessage();
    			qMsg.encoding = CCSID;
    			qMsg.characterSet = CCSID;
    			qMsg.writeString(msgStr);
    			MQPutMessageOptions pmo = new MQPutMessageOptions();
    			qQueue.put(qMsg, pmo);
    			System.out.println("发送成功");
    		} catch (MQException e)
    		{
    			System.out.println("发生了一起异常,异常原因:" + e.reasonCode);
    		} catch (IOException e)
    		{
    			System.out.println("发生了一起IO异常:" + e.getMessage());
    		} finally
    		{
    			finalizer();
    		}
    	}
    

    最后释放:

    	/**
    	 * 手动释放
    	 */
    	private static void finalizer()
    	{
    		try
    		{
    			qQueue.close();
    			qMgr.disconnect();
    		} catch (MQException e)
    		{
    			System.out.println("发生了一起异常,错误代码:" + e.reasonCode);
    			e.printStackTrace();
    		}
    	}
    

    OK,接下来,Main方法中:

    public static void main(String[] args) throws Exception
    	{
    		File path = new File(dir);
    		search(path);
    	}
    

    右键-Run以下,提示发送成功,可以在MQ客户端先查看以下消息队列深度。

    由于在写博客的时候,我只能在家里的业余时间写,所以环境不允许,没办法截图,不过所有的代码都是经得起考验的可放心使用。

    接下来,接收方法:

    	/**
    	 * 接收消息
    	 * 
    	 * @return
    	 */
    	public static String getMsg()
    	{
    		final MQMessage revMessage = new MQMessage();
    		try
    		{
    			init();
    			MQGetMessageOptions gmo = new MQGetMessageOptions();
    			revMessage.characterSet = CCSID;
    			revMessage.encoding = CCSID;
    			gmo.options += MQC.MQPMO_SYNCPOINT;
    			if (qQueue.getCurrentDepth() <= 0)
    			{
    				System.out.println("当前队列深度为0,队列中没有消息。");
    				return null;
    			}
    			qQueue.get(revMessage, gmo);
    			String revString = revMessage.readStringOfByteLength(revMessage.getMessageLength());
    			saveToXml(revString, System.currentTimeMillis());
    			return revString;
    		} catch (MQException e)
    		{
    			if (e.reasonCode == 2033) // 没有消息
    			{
    				System.out.println("没收到消息!");
    			}
    		} catch (IOException e)
    		{
    			e.printStackTrace();
    		} finally
    		{
    			finalizer();
    		}
    		return null;
    	}
    

    查看了MQ文档,发现错误代码2033是空消息。当然那一段异常代码可以删掉了,因为在try方法中,我们首先判断了队列深度,如果队列深度为0,那就返回null,。所以2033异常应该是没有效果的。在来看一下保存文件:

    	/**
    	 * 保存文件
    	 * 
    	 * @param content
    	 *            报文
    	 * @param number
    	 *            时间戳
    	 */
    	private static void saveToXml(String content, long  name)
    	{
    		FileWriter fw;
    		String path = "C:/Users/admin/Desktop/远程测试报文2/";
    		File filePath = new File(path);
    		if (!filePath.exists())
    		{
    			filePath.mkdirs();
    		}
    		try
    		{
    			File newFile = new File("C:/Users/admin/Desktop/远程测试报文2/" + name + ".xml");
    			if (!newFile.exists())
    			{
    				fw = new FileWriter("C:/Users/admin/Desktop/远程测试报文2/" + name + ".xml");
    			} else 
    			{
    				fw = new FileWriter("C:/Users/admin/Desktop/远程测试报文2/" + name + "2" + ".xml");
    			}
    			fw.write(content);
    			fw.flush();
    			fw.close();
    		} catch (IOException e)
    		{
    			e.printStackTrace();
    		}
    	}
    	
    

    然后在main方法中,调用:

    		while(true)
    		{
    			getMsg();
    		}
    

    将所有报文保存成xml格式,这个只是我项目里的需求,大家在开发中根据需求自己修改修改就可以用了。

    下载地址:http://download.csdn.net/download/u012552275/9815601
    (注:在下载的类中,和本章的代码稍有不同,下载好的类里,保存文件的格式是用报文里的节点截取的,在开发中大家直接将本章的保存代码稍加替换就可以使用了。)

    自此,博客将不再更新有关MQ的知识。
    有什么不懂的地方,欢迎留言,或者加群159143965

    WebSphere MQ使用:http://blog.csdn.net/u012552275/article/details/70194285

    使用JAVA代码发送MQ消息:http://blog.csdn.net/u012552275/article/details/70194644

    JAVA发送接收MQ代码示例:http://blog.csdn.net/u012552275/article/details/70194969


    展开全文
  • 第四步:配置class文件以上就是基本配置,关于主要地方加以了注释,关于经常遇到的2035错误主要是因为权限报错,windows版的mq就把连接认证关闭,然后连接用户确认是mqm用户组的用户即可,目前这两种可能性排除可以...

    第一步:建立新项目,如下图所示

    cf5220afb45a277be8485dee07ba248c.png

    第二步:导入jar包,以上八个jar是必须的,如果网上可以下载connector-1.0.jar也导入;

    第三步:配置pom.xml文件如下图所示;

    fcfca7c15a4fcc9b03282a5450ca841a.png

    第四步:配置class文件

    763bd0412f4597134b5521fc18998a78.png

    d85d90b836577a0a8bf5e6b202c28902.png

    b61d87486d021550a3744da07517bda6.png

    以上就是基本配置,关于主要地方加以了注释,关于经常遇到的2035错误

    主要是因为权限报错,windows版的mq就把连接认证关闭,然后连接用户确认是mqm用户组的用户即可,目前这两种可能性排除可以解决90%的问题;对于linux版的配置,

    若保持MQ服务器端的通道定义的MCAUSER属性值为缺省值,即为空,则可将MQ客户端所使用的用户添加到MQ服务器所在的操作系统中。第二就是保证连接用户是mqm用户组的用户名。加入上面两种方式都不行,那就要考虑关闭队列管理器的通道认证,操作如下可以通过命令行中指令关闭通道认证记录:

    RUNMQSC 队列管理器名称

    ALTER QMGR CHLAUTH(DISABLED)

    关于2085错误:

    2085是名称错误,检查你的队列名称是否正确,很简单。

    关于2045错误:

    2045是格式错误,其实就是在接收和发送判断时候出了错,

    如果是发送队列,需要使用MQC.MQOO_FAIL_IF_QUIESCING 和 MQC.MQOO_OUTPUT ;//空消息或者发送消息。MQOO_INPUT_AS_Q_DEF不能作为远程队列的。

    2033错误:这是在接收消息时遇到了空指针,这个错误可以忽略。

    展开全文
  • JAVA IBM MQ 接收、发送

    热门讨论 2012-05-13 16:43:46
    JAVA IBM MQ 接收消息、发送消息例子
  • Java调用MQ队列

    2021-02-12 19:09:42
    IBM MQ 6.0中设置两个队列,(远程队列、通道之类都不设置)。队列管理器是XIR_QM_1502队列名称是ESBREQIP地址是10.23.117.134(远程的一台电脑,跟我的电脑不在一个局域网内)端口1414CCSID 1208程序如下,发送线程两个...

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

    队列管理器是XIR_QM_1502

    队列名称是ESBREQ

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

    端口1414

    CCSID 1208

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

    /*

    * 创建日期 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部署在本地的时候,就需要用绑定方式

    // 本机IP是10.24.28.139连接10.23.117.134的时候不需要下句

    //MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,

    //MQC.TRANSPORT_MQSERIES_BINDINGS);

    // Create a connection to the QueueManager

    System.out.println(name + " Connecting to queue manager: " + qManager);

    try {

    qMgr = new MQQueueManager(qManager);

    // Set up the options on the queue we wish to open

    int openOptions = MQC.MQMT_REQUEST | MQC.MQPMO_NEW_MSG_ID

    | MQC.MQOO_OUTPUT | MQC.MQOO_FAIL_IF_QUIESCING

    | MQC.MQOO_INPUT_AS_Q_DEF;

    // Now specify the queue that we wish to open and the open options

    System.out.println(name + " Accessing queue: " + qName);

    MQQueue queue = qMgr.accessQueue(qName, openOptions);

    // Define a simple WebSphere MQ Message ...

    // Specify the default put message options

    MQPutMessageOptions pmo = new MQPutMessageOptions();

    // Put the message to the queue

    System.out.println(name + " Sending a message...");

    MQMessage msg = new MQMessage();

    msg.messageId = "MSGID".getBytes();

    msg.messageType = MQC.MQMT_REQUEST;

    msg.replyToQueueName = "ESBREQ";

    // 在此测试一下 mq 的传输次列

    for (int j = 1; j 

    msg.messageSequenceNumber = j;

    // write some text in UTF8 format

    try {

    String str = "Salemetsizbe Yerasel";

    str = str + " " + j;

    msg.writeUTF(str);

    queue.put(msg, pmo);

    msg.clearMessage();

    System.out.println(name + " putting the message... " + j);

    } catch (MQException mqe) {

    mqe.printStackTrace();

    break;

    } catch (IOException e1) {

    e1.printStackTrace();

    }

    }

    qMgr.commit();

    System.out.println(name + " Done!");

    System.out.println("==========");

    System.out.println("");

    } catch (MQException e) {

    e.printStackTrace();

    }

    }

    }

    class Receiver implements Runnable, SomeConstants {

    public void run() {

    recvMessage();

    }

    public void recvMessage() {

    String name = Thread.currentThread().getName();

    try {

    Thread.sleep(1000);

    MQQueueManager qMgr = null;

    System.out.println("进入线程" + name);

    System.out.println(name + " Connecting to queue manager: "

    + qManager);

    qMgr = new MQQueueManager(qManager);

    // 设置将要连接的队列属性

    // Note. The MQC interface defines all the constants used by the

    // WebSphere MQ Java programming interface

    // (except for completion code constants and error code constants).

    // MQOO_INPUT_AS_Q_DEF:Open the queue to get messages using the

    // queue-defined default.

    // MQOO_OUTPUT:Open the queue to put messages.

    int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT

    | MQC.MQOO_INQUIRE;

    // 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();

    gmo.options = gmo.options + MQC.MQGMO_SYNCPOINT;// Get messages

    // under sync point

    // control(在同步点控制下获取消息)

    gmo.options = gmo.options + MQC.MQGMO_WAIT; // Wait if no messages

    // on the

    // Queue(如果在队列上没有消息则等待)

    gmo.options = gmo.options + MQC.MQGMO_FAIL_IF_QUIESCING;// Fail if

    // Qeue

    // Manager

    // Quiescing(如果队列管理器停顿则失败)

    gmo.waitInterval = 1000; // Sets the time limit for the

    // wait.(设置等待的毫秒时间限制)

    System.out.println(name + " Accessing queue: " + qName);

    MQQueue queue = qMgr.accessQueue(qName, openOptions);

    int depth = 0;

    // Get the message off the queue.

    System.out.println("... " + name + " getting the message back again");

    for (;;) {

    try {

    queue.get(rcvMessage, gmo);

    System.out.println(" ID: "

    + (new String(rcvMessage.messageId)).trim()

    + " Num: " + rcvMessage.messageSequenceNumber

    + " Type: " + rcvMessage.messageType + " Flag: "

    + rcvMessage.messageFlags);

    // And display the message text...

    String msgText = rcvMessage.readUTF();

    System.out.println("The message is: " + msgText);

    rcvMessage.clearMessage();

    // Break if no MSG left in queue

    depth = queue.getCurrentDepth();

    if (depth == 0)

    break;

    } catch (MQException mqe) {

    mqe.printStackTrace();

    break;

    // null;

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    // Close the queue

    System.out.println(name + " Closing the queue");

    queue.close();

    // Disconnect from the QueueManager

    System.out.println(name + " Disconnecting from the Queue Manager");

    qMgr.disconnect();

    System.out.println(name + " Done!");

    System.out.println("==========");

    System.out.println("");

    } catch (MQException ex) {

    System.out

    .println("A WebSphere MQ Error occured : Completion Code "

    + ex.completionCode + " Reason Code "

    + ex.reasonCode + ex.getMessage());

    } catch (InterruptedException e1) {

    e1.printStackTrace();

    }

    }

    }

    public class MQTest {

    public static void main(String args[]) {

    /*

    * MQTest first = new MQTest(); first.sendMessage();

    * first.recvMessage();

    */

    Sender sender = new Sender();

    Thread senderThread = new Thread(sender);

    senderThread.start();

    senderThread.setName("Sender");

    Thread senderThread2 = new Thread(sender);

    senderThread2.start();

    senderThread2.setName("Sender2");

    Receiver recv = new Receiver();

    Thread recvThread = new Thread(recv);

    recvThread.start();

    recvThread.setName("Receiver");

    // Receiver recv = new Receiver();

    // new Thread(recv).start();

    }

    }

    运行结果如下:

    进入线程Sender2

    进入线程Sender

    Sender2 Connecting to queue manager: XIR_QM_1502

    Sender Connecting to queue manager: XIR_QM_1502

    Sender2 Accessing queue: ESBREQ

    Sender2 Sending a message...

    Sender Accessing queue: ESBREQ

    Sender Sending a message...

    Sender2 putting the message... 1

    Sender putting the message... 1

    Sender2 putting the message... 2

    Sender putting the message... 2

    Sender2 putting the message... 3

    Sender putting the message... 3

    Sender2 putting the message... 4

    Sender putting the message... 4

    Sender2 Done!

    ==========

    Sender Done!

    ==========

    进入线程Receiver

    Receiver Connecting to queue manager: XIR_QM_1502

    Receiver Accessing queue: ESBREQ

    ... Receiver getting the message back again

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 1

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 1

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 2

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 2

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 3

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 3

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 4

    ID: MSGID Num: 1 Type: 1 Flag: 0

    The message is: Salemetsizbe Yerasel 4

    Receiver Closing the queue

    Receiver Disconnecting from the Queue Manager

    Receiver Done!

    ==========

    展开全文
  • 三种JavaMQ发送消息的方法(含代码)

    千次阅读 2021-02-27 22:19:34
    创建一个MQQueueManager,进而使用它去创建一个MQQueue,接受使用MQQueue的put方法向MQ实际目标队列中放入消息,实验的结果是表明只支持MQMassege这种类型的消息。途径二:通过JMS方法实现。首先创建一个...
  • 本篇文章主要介绍了java远程连接调用Rabbitmq的实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • JAVA连接IBM MQ

    万次阅读 热门讨论 2017-01-20 18:03:50
    服务器连接通道名称为 “SERVERCONN” 创建队列管理器进入IBM MQ Explorer 创建队列管理器 右键“队列管理器”–>“新建”–>”队列管理器…” 添加队列管理器名字 一直下一步到这个页面,设定监听端口,点击...
  • Java远程连接IBM MQ

    2021-02-27 16:25:07
    需要在mq服务器上新建一个队列管理器、一个发送队列、一个接收队列、一个服务器通道2.启动队列管理器(SEND)strmqm SEND--启动监听(SL)runmqlsr -m SL-p 1414 -t tcp &--用户交互管理界面程序runmqscSEND--创建...
  • 我是MQ programmimg的新手。根据我的要求,我试图将示例XML消息放入队列中,并期望从响应队列返回响应。...通过java代码关闭MQ通道错误:Process(12908.13579) User(abc) Program(amqrmppa)Host(hostname)AMQ92...
  • Java获取MQ连接数的Demo.zip此为Java调用mq的demo,不多说看代码。。很简单
  • 应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接链接它们。简单理解:蓝牙配对jar包依赖:com.rabbitmqamqp-client3.0.4方式一:(发)importjava.io.IOException;importcom....
  • Java连接IBM MQ

    2021-02-27 16:24:31
    package ...import java.io.IOException;import java.io.UnsupportedEncodingException;import com.ibm.mq.MQEnvironment;import com.ibm.mq.MQException;import com.ibm.mq.MQGetMessageOption...
  • MQ接收队列到本地文件MQFileReceiver.javapackage com.mq.dpca.file;import java.io.File;import java.io.FileOutputStream;import com.ibm.mq.MQEnvironment;import com.ibm.mq.MQException;import ...
  • 客户机模式代码:/*** @modified by actorai E-mail:actorai@163.com* @version 创建时间:2010-9-15* 通过MQ API方式连接MQ;采用client(客户机模式)方式(另一种是绑定服务器方式)* 此方法类似于MQ Client连接 MQ ...
  • java连接ibm mq

    2021-02-12 17:14:55
    首先 打开 IBM websphere MQ 管理器 添加一个队列管理器 名称 叫MyTest在队列管理气中的队列文件夹下 新建一个本地队列名称叫LOCALQUEUE在高级-》通道 下新建一个服务器连接通道 名称叫:SERVERCONN在mytest右键 ...
  • mq安装目录下有简单的发送和接收代码,具体在samp目录下有一些不同语言的源代码,可以借鉴。类介绍:SendMSG:消息发送类。Main():主方法。SendMSG():消息发送方法。方法描述:public SendMSG() {MQEnvironment....
  • 使用JAVA语言自己动手来写一个MQ (类似ActiveMQ,RabbitMQ) 主要角色首先我们必须需要搞明白MQ (消息队列)中的三个基本角色ProducerBrokerConsumer整体架构如下所示 自定义协议首先从上一篇中介绍了协议的相关信息,...
  • admin Java程序连接端口:61616 修改61616端口,可以修改文件conf>activemq.xml 修改登录名和密码,可以修改文件conf>jetty-realm.properties 3、创建一个ActiveMQ工程 这里还是先放一张图: 根据这张图我们实现了一...
  • JAVA如何获取mq 发送的信息获取信息时报错:MQJE001: 完成代码为“2”,原因为“2045”。A WebSphere MQ error occurred : Completion code 2 Reason code 2045下面是我的测试环境队列管理器和队列配置通道配置代码...
  • IBMMQ配置SSL连接

    2018-08-30 14:30:08
    手把手教你怎么配置IBM WEBSPHERE MQ通过SSL连接,附详细步骤和实例代码
  • 我也曾经遇到过这个错误,当时队列管理器,队列,通道都一一创建,但就是报错HostName=192.168.8.46Channel=CH1QManager=WNMS3_QMMQJE001: 完成代码为“2”,原因为“2059”。com.ibm.mq.MQException: MQJE001: 完成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 31,255
精华内容 12,502
关键字:

JAVA连接MQ代码