首页 > 解决方案 > 使用 Cassandra 数据库实现 Spring Batch

问题描述

我正在尝试更改现有的 spring 批处理作业(XML 配置),它从 oracle 数据库读取数据并以所需格式写入 txt 和 XML 文件,但现在我想更改相同的实现以从 Cassandra 数据库而不是 oracle 读取数据,但我没有'在 Cassandra db 的春季批次中看不到任何与 JdbcCursorItemReader 类似的可用项目阅读器。

有人能告诉我应该使用哪个 ItemReader 从 Cassandra db 读取数据吗?或者我是否需要创建一个自定义 ItemReader 来从 Cassandra db 读取数据?

标签: spring-batch

解决方案


您可以创建一个 CustomItemReader

public class CustomItemReader implements ItemReader<List<YOUR_DOMAIN_OBJECT>> {

    @PostConstruct
    public void init() throws IOException {
        //establish cassandra db connection
    }

    @Override
    public List<YOUR_DOMAIN_OBJECT> read()
        throws Exception{

        //user cassandra connection to read data and build List<YOUR_DOMAIN_OBJECT>

       return data;
    }

}

推荐阅读