WebSphere MQ Java 应用开发简单实例(下篇:绑定模式开发)(client mode和binding mode)

* MQ服务器的配置参加上篇*

4-绑定模式连接

Java应用程序必须和MQ服务器安装在同一个机器上,通过进程间通信机制,不通过TCP/IP进行通信,减少网络开销。
MQ提供32和64位版本的MQ JNI库,默认在/opt/mqm/java/lib/和/opt/mqm/java/lib64/目录下:
mqjbnd.so: 该库为应用提供绑定模式连接MQ;

修改代码:其实变动更小,只要将主机地址和端口去掉即可,因为绑定模式不需要网络通信,此外也不需要TCP通道参数。
import java.io.IOException;
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.constants.CMQC;
import com.ibm.mq.constants.MQConstants;

public class MQTest2 {
   

    public static void main(String[] args) throws MQException, IOException 
    {
        //发送消息给队列
        put();

        //从队列读取消息
        get();
    }

    static void put() throws MQException, IOException
    {
        //配置MQ服务器连接参数

        //用户名和密码
        MQEnvironment.userID = "mquser1";
        MQEnvironment.password = "mqtest2016";
        //设置应用名称,方便服务器MQ 查看应用连接
        MQEnvironment.properties.put(MQConstants.APPNAME_PROPERTY, "MQ Test By Java");

        //设置绑定模式通信
        MQEnvironment.properties.put(CMQC.TRANSPORT_PROPERTY,CMQC.TRANSPORT_MQSERIES_BINDINGS);

        //创建实例,连接队列管理器
        MQQueueManager queueManager = new MQQueueManager("JAVA.QUEUE.MANAGER.1");

        //以可写的方式访问队列管理器已定义的队列QUEUE1,当然也可以创建队列
        MQQueue putQueue = queueManager.accessQueue("QUEUE1", CMQC.MQOO_OUTPUT);

        //新建并发送消息给队列
        MQMessage myMessage = new MQMessage();
        String name = "MePlusPlus's 博客2";
        myMessage.writeUTF(name);

        //使用默认的消息选项
        MQPutMessageOptions pmo = new MQPutMessageOptions();
        //发送消息
        putQueue.put(myMessage, pmo);
        putQueue.close();

        //断开连接
        queueManager.disconnect();
    }

    static void get() throws MQException, IOException
    {
        //配置MQ服务器连接参数
        MQEnvironment.userID = "mquser1";
        MQEnvironment.password = "mqtest2016";
        //设置应用名称,方便服务器MQ 查看应用连接
        MQEnvironment.properties.put(MQConstants.APPNAME_PROPERTY, 
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值