Spring 引导 2.3.0.M4、Cassandra 和 SSL

Spring Boot 2.3.0.M4, Cassandra, and SSL

我一直在使用 ClusterBuilderCustomizer 自定义我的 Spring 启动应用程序 (2.2.5.RELEASE) 和 Cassandra 数据库之间的 SSL 连接。迁移到 Spring Boot 2.3.0.M4 后,我的代码不再编译,因为 ClusterBuilderCustomizer 不再存在。

根据 Spring Boot 2.3.0 release notes,它已被替换为 DriverConfigLoaderBuilderCustomizerCqlSessionBuilderCustomizer。有没有人有关于如何将这些定制器 类 与 SSL 结合使用的工作示例?

您只需声明两个具有这些类型的 bean:

@Bean
public CqlSessionBuilderCustomizer cqlSessionBuilderCustomizer() {
    return cqlSessionBuilder -> cqlSessionBuilder
            .withNodeStateListener(new MyNodeStateListener())
            .withSchemaChangeListener(new MySchemChangeListener());
}

@Bean
public DriverConfigLoaderBuilderCustomizer driverConfigLoaderBuilderCustomizer() {
    return loaderBuilder -> loaderBuilder
            .withDuration(DefaultDriverOption.REQUEST_TIMEOUT, Duration.ofSeconds(10));
    }
}

使用 CqlSessionBuilderCustomizer 将运行时对象传递给会话构建器,例如节点状态侦听器或架构更改侦听器。

使用DriverConfigLoaderBuilderCustomizer 以编程方式自定义驱动程序配置。有关如何以编程方式配置驱动程序的详细信息,请参阅 driver docs