• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

基于WebSphere MQ的收发消息程序2

发布: 2007-6-22 07:38 | 作者:   | 来源:   | 查看: 39次 | 进入软件测试论坛讨论

领测软件测试网

   

MQ软件提供一个JAVA软件包,里面有JMS类库,和一套MQ的类库。不熟悉MQI编程方法的程序员可以用JMS,比较熟悉MQI编程方法的程序则可以用MQ类库来编程。下面的小程序是使用Java实现从队列管理器QM_SERVER中的队列INITQ写入或读出消息。

package transfer;
import com.ibm.mq.*;
public class SendMSG1
{
  private MQQueueManager qMgr;//定义一个队列管理器变量
  public static void main(String args[])
  {
   new SendMSG1();
  }
  public SendMSG1()
  {
   MQEnvironment.hostname="192.168.1.18";//本地IP
   MQEnvironment.channel="CHANNEL1";//用来通信的通道
   MQEnvironment.CCSID =1381;
   try{
    qMgr=new MQQueueManager("QM_SERVER");//队列管理器名称
    int openOptions=MQC.MQOO_INPUT_AS_Q_DEF|MQC.MQOO_OUTPUT|MQC.MQOO_INQUIRE;
    MQQueue queue=qMgr.accessQueue("INITQ",openOptions,null,null,null);
    //建立连接
    MQMessage hello=new MQMessage();//要写入队列的消息
    try{
     hello.format=MQC.MQFMT_STRING ;
     hello.characterSet=1381 ;
     hello.writeString("这是测试!");
    }
    catch(java.io.IOException ex)
    {}finally{};
    MQPutMessageOptions pmo=new MQPutMessageOptions();
    for (int i=1;i<=5;i++)//将消息依次写入队列
    {
     hello.expiry=-1; //设置消息用不过期
     queue.put(hello);//将消息放入队列
    }
    queue.close() ;//关闭队列
    qMgr.disconnect() ; //断开连接
   }
   catch(Exception ex)
   {}
   finally{};
  }
}

 

程序的运行结果如下图3所示:

基于<STRONG><A href=WebSphere MQ的收发消息程序2" />

图3 程序运行结果界面

这个例子仅仅是向队列INITQ写入了5条相同的消息,当然,在实际应用中,消息可能是多种多样的,如果要传送数据库的内容,则可以在写入消息时,用一些特殊的符号来将各字段的数据区分开,那么在消息读出时,也可以根据此特殊的符号来读取数据。依据同样的步骤:和队列管理器建立连接-从队列读取消息---关闭队列---断开连接,可以用Java写出如何从队列中读出消息。

MQ有许多显著的优点,比如借住在不同的平台上使用相同的应用程序接口,它能轻松的实现跨平台通信,从而能够使开发人员避开网络的复杂性;比如它对消息的处理不依赖于时间,在消息创建和发送时,不受时间的限制,增加了处理的灵活性......

总之,MQ的特点以及IBM公司在企业应用领域所付出的巨大努力,使得它具有极强的生命力。现在,大量的政府部门、金融电信和企业用户使用WebSphere MQ作为企业电子商务的基础平台。有理由相信,随着政府办公自动化、企业信息化的脚步的不断前进,WebSphere在中国市场上一定会成为一颗耀眼的明星。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网