5.3. 远程 Jakarta Enterprise Beans 数据压缩


您可以压缩包含 Enterprise Beans 协议消息的消息流

注意

目前,压缩只能通过在 Jakarta Enterprise Beans 接口上的注释指定,该界面应该位于客户端和服务器端。当前没有与指定压缩提示相同的 XML。

数据压缩提示可以通过 JBoss 注释 org.jboss.ejb.client.annotation.CompressionHint 指定。hint 值指定是压缩请求、响应还是请求和响应。添加 @CompressionHint 默认为 compressResponse=truecompressRequest=true.

该注解可以在接口级别指定,以应用到 Jakarta Enterprise Beans 接口中的所有方法,例如:

import org.jboss.ejb.client.annotation.CompressionHint;

@CompressionHint(compressResponse = false)
public interface ClassLevelRequestCompressionRemoteView {
    String echo(String msg);
}
Copy to Clipboard Toggle word wrap

或者注解可应用于 Jakarta Enterprise Beans 接口中的特定方法,例如:

import org.jboss.ejb.client.annotation.CompressionHint;

public interface CompressableDataRemoteView {

    @CompressionHint(compressResponse = false, compressionLevel = Deflater.BEST_COMPRESSION)
    String echoWithRequestCompress(String msg);

    @CompressionHint(compressRequest = false)
    String echoWithResponseCompress(String msg);

    @CompressionHint
    String echoWithRequestAndResponseCompress(String msg);

    String echoWithNoCompress(String msg);
}
Copy to Clipboard Toggle word wrap

上面显示的 compressionLevel 设置可具有以下值:

  • BEST_COMPRESSION
  • BEST_SPEED
  • DEFAULT_COMPRESSION
  • NO_COMPRESSION

compressionLevel 设置默认为 Deflater.DEFAULT_COMPRESSION

带有方法级别覆盖的类级注解:

@CompressionHint
public interface MethodOverrideDataCompressionRemoteView {

    @CompressionHint(compressRequest = false)
    String echoWithResponseCompress(final String msg);

    @CompressionHint(compressResponse = false)
    String echoWithRequestCompress(final String msg);

    String echoWithNoExplicitDataCompressionHintOnMethod(String msg);
}
Copy to Clipboard Toggle word wrap

在客户端上,确保 org.jboss.ejb.client.view.annotation.scan.enabled 系统属性设置为 true。此属性告知 JBoss Jakarta Enterprise Beans 客户端扫描注释。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat