使用 IBM MQ classes for Java

Java 环境中使用 IBM® MQIBM MQ classes for Java 允许 Java 应用程序作为 IBM MQ 客户机连接到 IBM MQ ,或者直接连接到 IBM MQ 队列管理器。

注:

[稳定]IBM 将不再对 IBM MQ classes for Java 进行进一步的增强,并且它们在功能上已稳定在 IBM MQ 8.0中提供的级别。 将继续完全支持使用 IBM MQ classes for Java 的现有应用程序,但不会添加新功能部件,并且将拒绝增强请求。 完全支持意味着缺陷将与对 IBM MQ 系统需求的更改所必需的任何更改一起修复。

IMS中不支持 IBM MQ classes for Java

WebSphere® Liberty中不支持 IBM MQ classes for Java 。 它们不得与 IBM MQ Liberty 消息传递功能或通用 JCA 支持一起使用。 有关更多信息,请参阅 在 J2EE/JEE 环境中使用 WebSphere MQ Java 接口

IBM MQ classes for JavaJava 应用程序可用于访问 IBM MQ 资源的三个备用 API 之一。 其他 API 包括:

  • [MQ 9.3.0 2022 年 6 月][MQ 9.3.0 2022 年 6 月][Jakarta Messaging 3.0 ]IBM MQ classes for Jakarta Messaging
  • [JMS 2.0 ]IBM MQ classes for JMS

有关更多信息,请参阅 Access IBM MQ from Java-Choice of API

IBM MQ 9.3开始,使用 Java 8构建 IBM MQ classes for JavaJava 8 运行时环境支持运行较早的类文件版本。

IBM MQ classes for Java 封装了消息队列接口 (MQI) (本机 IBM MQ API) ,并使用类似于 C++ 的对象模型以及与 IBM MQ.NET 接口。

可编程选项允许 IBM MQ classes for Java 通过以下任一方式连接到 IBM MQ :
  • 客户机方式 中,通过使用传输控制协议/Internet Protocol (TCP/IP) 作为 IBM MQ MQI client
  • 绑定方式中,使用 Java 本机接口 (JNI) 直接连接到 IBM MQ
注: IBM MQ classes for Java不支持自动客户机重新连接。

客户机方式连接

IBM MQ classes for Java 应用程序可以使用客户机方式连接到任何受支持的队列管理器。

要以客户机方式连接到队列管理器, IBM MQ classes for Java 应用程序可以在运行队列管理器的同一系统上运行,也可以在其他系统上运行。 在每种情况下, IBM MQ classes for Java 都通过 TCP/IP 连接到队列管理器。

有关如何编写应用程序以使用客户机方式连接的更多信息,请参阅 IBM MQ classes for Java 连接方式

绑定方式连接

在绑定方式下使用时, IBM MQ classes for Java 使用 Java 本机接口 (JNI) 直接调用现有队列管理器 API ,而不是通过网络进行通信。 在大多数环境中,通过避免 TCP/IP 通信成本,以绑定方式进行连接为 IBM MQ classes for Java 应用程序提供比以客户机方式进行连接更好的性能。

使用 IBM MQ classes for Java 以绑定方式连接的应用程序必须在它们所连接的队列管理器所在的系统上运行。

必须将用于运行 IBM MQ classes for Java 应用程序的 Java 运行时环境配置为装入 IBM MQ classes for Java 库; 请参阅 IBM MQ classes for Java 库 以获取更多信息。

有关如何编写应用程序以使用绑定方式连接的更多信息,请参阅 IBM MQ classes for Java 连接方式