Hadoop系列——SpringBoot集成Hadoop、实现hdfs上传下载文件(2)

  • 在Hadoop系列——SpringBoot集成Hadoop、实现hdfs上传下载文件(1)基础上做变动
  • yml文件配置
    hadoop.name-node: hdfs://localhost:9000

     

  • HadoopConfig.java
    @Configuration
    @ConditionalOnProperty(name="hadoop.name-node")
    @Slf4j
    public class HadoopConfig {
    
        @Value("${hadoop.name-node}")
        private String nameNode;
    
        @Bean("fileSystem")
        public FileSystem createFs(){
            //读取配置文件
            org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration();
            
            conf.set("dfs.replication", "1");
           
            // 文件系统
            FileSystem fs = null;
            // 返回指定的文件系统,如果在本地测试,需要使用此种方法获取文件系统
            try {
                URI uri = new URI(nameNode.trim());
                fs = FileSystem.get(new URI(nameNode), conf, "root");
            } catch (Exception e) {
                log.error("", e);
            }
            return  fs;
        }
    }
    

     

你可能感兴趣的:(Hadoop,SpringBoot,java)