在idea控制台查看hdfs的文件内容
步骤
创建maven工程,在pom.xml文件内加入以下依赖
package HDFS;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
/**
- hadoop的版本是2.7.1
/
public class HDFSDemo {
/*- 演示HDFS文件系统操作API
- @罗朝阳
/
public static void main(String[] args) {
//catFileToConsonle 方法传入指定的参数 启动集群 然后就能运行跑成功 得到想要的结果
}
/* - 读取HDFS中文件的内容打印到控制台上
- @param filePath HDFS文件系统路径
- @throws Exception
/
public static void catFileToConsonle(String filePath) throws Exception{
/*- HDFS是一个文件系统,既然是文件系统那么就需要和环境变量紧密相连
- 对于HDFS文件系统而言,我们需要创建HDFS文件系统对象才可以对HDFS文件操作
- ps:因为操作的是HDFS文件系统所有,导入的包都是
- org.apache.hadoop
/
//1、需要获取系统环境变量
Configuration conf = new Configuration();
//2、需要设置相关属性(通过代码设置namenode是谁)
conf.set(“fs.defaultFS”,“hdfs://192.168.144.101:9000”); //设置hdfs的active节点
//3、创建文件系统化对象
FileSystem fileSystem = FileSystem.get(conf);
//4、需要对文件系统中的数据进行读取,既然读取必然使用IO
//open 方法是对文件系统的连接
FSDataInputStream fis = fileSystem.open(new Path(filePath));
//5、使用一个工具类IOUtils
/* - 输入对象,输出流对象,读取数据的大小,是否关闭流对象(true)
*/
IOUtils.copyBytes(fis,System.out,4096,true);
}
}
仅提供参考
注释
可以在自己计算机的hosts文件配置映射信息
例如:xxx.xxx.xxx.xxx hostname