MQ For JAVA学习记录.doc

上传人:小** 文档编号:91236835 上传时间:2019-06-26 格式:DOC 页数:5 大小:46.51KB
返回 下载 相关 举报
MQ For JAVA学习记录.doc_第1页
第1页 / 共5页
MQ For JAVA学习记录.doc_第2页
第2页 / 共5页
MQ For JAVA学习记录.doc_第3页
第3页 / 共5页
MQ For JAVA学习记录.doc_第4页
第4页 / 共5页
MQ For JAVA学习记录.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《MQ For JAVA学习记录.doc》由会员分享,可在线阅读,更多相关《MQ For JAVA学习记录.doc(5页珍藏版)》请在金锄头文库上搜索。

1、MQ For JAVA 编程一、 .设置连接 我们通过MQQueueManager 类的构造器调用获得到队列管理器的连接。在这个时候,我们所获得连接的类型是由MQEnvironment 类的某些静态字段决定的。区别不同连接模式的静态字段设置分别是主机、通道、userId 和口令。在这些用以连接到队列管理器的MQEnvironment 字段中,最能区别出绑定模式和客户机连接模式的两个字段设置就是主机和通道。在绑定模式中,除了userId 和口令字段外,您不必为这些字段中的任何一个设置值。您也可以选择在绑定模式中设置它们。1、MQEnvironment.hostName由于该主机名用于到队列管理器

2、运行机器的TCP/IP 连接,因此其值不区分大小写MQEnvironment.host = “” ;2、MQEnvironment.channel这是客户机连接通道的名。该字段的值是区分大小写的。一般说来,它就是队列管理器下面服务器连接通道的名。是一个双向链接,它使在客户机和队列管理器之间的MQI 调用和回复成为可能。对客户机连接而言,我们应当将其设为应用程序尝试连接的队列管理器下面服务器连接通道的名MQEnvironment.channel = “JAVA.CLIENT.CHNL”;3、MQEnvironment.port端口号是一个可选字段。在默认情况下,客户机会尝试在主机的1414 号端

3、口上连接到队列管理器。1414 号端口是WebSphere MQ监听器默认使用的端口。如果该端口号与默认的不同,那么您可以用MQEnvironment.port 字段来指定端口号MQEnvironment.port = 14164、 MQEnvironment.userId 和MQEnvironment.passworduserId 和口令字段在默认情况下是空的。您可以通过设置userId 和口令字段的值来指定userId 和口令MQEnvironment.userId = “userXYZ” ;MQEnvironment.password = “password” ;5、 二、属性设置 pu

4、blic class MQGetMessageOptions extends Object 该类包含控制 MQQueue.get() 操作的选项。 注: 该类中可用的一些选项的操作取决于使用它们的环境。使用 * 来标记这些元素。请参阅 第 6 章 与环境相关的行为以获取细节。 变量options public int options 控制 MQQueue.get 操作的选项。可以指定下列任何值,或不指定下列值。如果需要多个选项,可以使用按位“或”运算符添加或组合这些值。 MQC.MQGMO_NONE MQC.MQGMO_WAIT 等待消息的到来。 MQC.MQGMO_NO_WAIT 如果没有适

5、用的消息,则立即返回。 MQC.MQGMO_SYNCPOINT 获取同步点控制下的消息;标记消息为对其它应用程序不可用,仅当落实工作单元时才将它从队列中删除。如果工作单元被逆序(现场)恢复,那么消息将再次可用。 MQC.MQGMO_NO_SYNCPOINT 获取非同步点控制下的消息。 MQC.MQGMO_BROWSE_FIRST 从队列开始处浏览。 MQC.MQGMO_BROWSE_NEXT 从队列当前位置浏览。 MQC.MQGMO_BROWSE_MSG_UNDER_CURSOR 从浏览光标处浏览消息。 MQC.MQGMO_MSG_UNDER_CURSOR 获取浏览光标处的消息。 MQC.MQ

6、GMO_LOCK* 锁定被浏览的消息。 MQC.MQGMO_UNLOCK* 解锁以前锁定的消息。 MQC.MQGMO_ACCEPT_TRUNCATED_MSG 允许截断消息数据。 MQC.MQGMO_FAIL_IF_QUIESCING 如果队列管理器停顿,则失败。 MQC.MQGMO_CONVERT 在将数据复制到消息缓冲区前,请求把应用程序数据转换为与 MQMessage 的 characterSet 和编码属性一致。因为数据转换也适用于从消息缓冲区检索出的数据,所以应用程序通常不设置该选项。 MQC.MQGMO_SYNCPOINT_IF_PERSISTENT* 如果消息一直存在,则使用同步

7、点控制获取消息。 MQC.MQGMO_MARK_SKIP_BACKOUT* 允许工作单元不恢复队列上的消息而逆序(现场)恢复。 分段和分组 MQSeries 消息能作为单个实体被发送或接收,能为发送和接收分割成几个段,也能与组中的其它消息链接。发送的每个数据片称为物理消息,可以是完整的逻辑消息或较长逻辑消息的一小段。每个物理消息通常有不同的 MsgId。单个逻辑消息的所有段都有相同的 groupId 值和 MsgSeqNumber 值,但是每个段的 Offset 值不同。 Offset 字段从逻辑消息的开始处起给予物理消息中数据的偏移量。因为这些段是个别的物理消息,所以通常有不同的 MsgId

8、 值。组成组的一部分的逻辑消息有相同的 groupId 值,但是组中的每个消息都有不同的 MsgSeqNumber 值。组中的消息也可被分段。 下列选项可用于处理被分段或分组的消息。 MQC.MQGMO_LOGICAL_ORDER* 以逻辑次序返回组和逻辑消息段中的消息。 MQC.MQGMO_COMPLETE_MSG* 仅检索完整的逻辑消息。 MQC.MQGMO_ALL_MSGS_AVAILABLE* 仅当组中所有消息都可用时才从组检索消息。 MQC.MQGMO_ALL_SEGMENTS_AVAILABLE* 仅当组中所有段都可用时才检索逻辑消息的段。 waitInterval public

9、int waitInterval MQQueue.get 调用等待适用的消息到来的最大时间(以毫秒)(与 MQC.MQGMO_WAIT 一起使用)。 MQC.MQWI_UNLIMITED 的值表明需要一个不受限制的等待。 resolvedQueueName public String resolvedQueueName 这是由队列管理器设置的从中可检索消息的队列本地名的输出字段。如果打开别名队列或模型队列,这将与用于打开队列的名称不同。 matchOptions* public int matchOptions 确定检索什么消息的选择标准。可以设置下列匹配选项: MQC.MQMO_MATCH_

10、MSG_ID 要匹配的消息 id MQC.MQMO_MATCH_CORREL_ID 要匹配的关联 id MQC.MQMO_MATCH_GROUP_ID 要匹配的组 id MQC.MQMO_MATCH_MSG_SEQ_NUMBER 匹配消息序列号 MQC.MQMO_NONE 不需要匹配 groupStatus* public char groupStatus 这是一个输出字段,表明组中是否有检索消息,如果有的话是否是组中的最后检索消息。可能的值有: MQC.MQGS_NOT_IN_GROUP 消息不在组中。 MQC.MQGS_MSG_IN_GROUP 消息在组中,但不是组中的最后消息。 MQC.

11、MQGS_LAST_MSG_IN_GROUP 消息是组中的最后消息。这也是当组仅由一个消息组成时返回的值。 segmentStatus* public char segmentStatus 这是表明检索消息是否是逻辑消息段的输出字段。如果消息是段,标志将表明它是否是最后的段。可能的值有: MQC.MQSS_NOT_A_SEGMENT 消息不是段。 MQC.MQSS_SEGMENT 消息是段,但不是逻辑消息的最后段。 MQC.MQSS_LAST_SEGMENT 消息是逻辑消息的最后段。这也是当逻辑消息仅由一个段组成时返回的值。 segmentation* public char segmentation 这是表明检索的消息(它是逻辑消息的一个分段)是否允许分段的输出字段。可能的值有: MQC.MQSEG_INHIBITED 不允许分段。 MQC.MQSEG_ALLOWED 允许分段。 构造函数MQGetMessageOptions public MQGetMessageOptions() 使用 MQC.MQGMO_NO_WAIT 设置的选项、等待间隔 0 和空白组成的队列名称来构造新的 MQGetMessageOptions 对象。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号