- 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;
- 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 {
-
- queue = qMgr
- .accessQueue(queueString, openOptions, null, null, null);
- MQMessage msg = new MQMessage();
- msg.format = MQC.MQFMT_STRING;
- msg.characterSet = CCSID;
- msg.encoding = CCSID;
-
- msg.writeString(msgStr);
- MQPutMessageOptions pmo = new MQPutMessageOptions();
- msg.expiry = -1;
- queue.put(msg, pmo);
- } catch (Exception e) {
-
- e.printStackTrace();
- } finally {
- if (queue != null) {
- try {
- queue.close();
- } catch (MQException e) {
-
- 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) {
-
- e.printStackTrace();
- } finally {
- if (queue != null) {
- try {
- queue.close();
- } catch (MQException e) {
-
- e.printStackTrace();
- }
- }
- }
- }
-
- public static void main(String[] args) throws MQException {
- connect();
- sendMsg("fuck MQ");
- receiveMsg();
- }
- }
posted @
2017-09-16 13:24
申公
阅读(
867)
评论()
编辑
收藏
举报