使用JAVA代码发送MQ消息
来源:互联网 发布:妙味课堂js课后练习 编辑:程序博客网 时间:2024/05/21 18:37
这一节介绍使用JAVA发送文本内容至MQ中
首先新建一个项目,导入必要的包,我记得,必要的包有6个,后来用了maven,我就把本地的删了,测试的时候,可以把jar全部丢进去,在MQ安装目录有个JAVA——lib文件夹,里面就是用到的架包了。
新建类RemoteTest
其他都我就不写了,稍后在文尾给个下载地址供大家参考。
/** * 初始化 */ 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(); } }
这里的配置文件,大家可以手动改以下,由于我这里是将配置文件写在了properties文件里,大家根据自己喜好选择。
我的配置文件是:
队列管理器名称Q_MANAGER = Test主机HOST_NAME = 10.10.10.223端口PORT = 1414队列MQ_NAME = QUEUE通道CHANNEL = CHANNELCCSID = 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(); } }
接受的代码为:
/** * 接收消息 * * @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()); return revString; } catch (MQException e) { if (e.reasonCode == 2033) // 没有消息 { System.out.println("没收到消息!"); } } catch (IOException e) { e.printStackTrace(); } finally { finalizer(); } return null; }
自此,就可以通过MQ队列接受和发送消息了。
下载地址:
MQ錯誤代碼合集http://download.csdn.net/detail/u012552275/9781699
MQ的安裝及配置http://download.csdn.net/detail/u012552275/9781644
IBMMQ安裝教程http://download.csdn.net/detail/u012552275/9781643
java的配置文件http://download.csdn.net/detail/u012552275/9815568
MQ工具类http://download.csdn.net/detail/u012552275/9815577
远程测试http://download.csdn.net/detail/u012552275/9815574
其他博客:
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
- 使用JAVA代码发送MQ消息
- Active MQ延时发送消息的Java示例代码段
- Active MQ延时发送消息的Java示例代码段
- apache mq 发送消息
- MQ发送事务消息
- MQ发送延时消息
- MQ发送定时消息
- JAVA发送接收MQ代码示例
- 一段同步接收和发送MQ消息的代码
- 一段同步接收和发送MQ消息的代码
- 使用IBM WEBSHPERE MQ发送大的消息
- mq 使用Spring发送,消费topic和queue消息
- WebSphere MQ安装配置,java发送接收消息
- java远程连接ibm mq实现发送和接受消息
- WebSphere MQ 压缩所发送的消息
- 通过rabbitmq向mq中发送消息
- WebSphere MQ发送接收消息_二
- MQ之间互相发送消息(三)
- nyoj 309 BOBSLEDDING 【贪心】
- Android Studio如何查看Gradle版本
- 经典计算机书籍-自制系列
- java字符与Unicode的转换
- 第八周——135. Candy
- 使用JAVA代码发送MQ消息
- 235. Lowest Common Ancestor of a Binary Search Tree
- JS中几种常见的集合
- 2017.4.16 关于加密
- ArrayList的源码简单分析分析
- 安卓跳转与参数传递
- 《高效能人士的7个习惯》笔记
- Jquery实现点击切换单元格改变背景色
- SpringMVC从Controller跳转到另一个Controller