使用spring批处理从hdfs读取文件

t0ybt7op  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(319)

我要编写一个spring批处理程序,它将从hdfs读取一个文件,并更新mysql数据库中的数据。
hdfs中的源文件包含一些csv格式的报表数据。
有人能给我举一个从hdfs读取文件的例子吗?
谢谢。

4dc9hkyq

4dc9hkyq1#

这个 FlatFileItemReader 在spring中,批处理可以与任何spring框架一起工作 Resource 实施:

@Bean
public FlatFileItemReader<String> itemReader() {
    Resource resource; // get (or autowire) resource
    return new FlatFileItemReaderBuilder<String>()
            .resource(resource)
            // set other reader properties
            .build();
}

所以如果你有一个 Resource 句柄指向一个hdfs文件,您的操作就完成了。
现在,为了拥有hdfs资源,您可以:
对hadoop使用spring。一旦配置了hdfs文件系统,就可以使用 applicationContext.getResource("hdfs:data.csv"); 实现你自己的 Resource 使用hadoopapi(如michaelsimons的答案所示)。我看到有些人已经在这里这样做了
希望这有帮助。

相关问题