hadoop权威指南有一个示例URLCat,实践并运行
用java来读取HDFS:
Import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;
Import org.apache.hadoop.io.IOUtils;
Import java.io.InputStream;
Import java.net.URL;
Public class URLCat{
static{
URL.setURLStreamHandlerFactory(newFsUrlStreamHandlerFactory());
}
Public static void main(String[]args) throws Exception{
InputStreamin=null;
try
{
in=new URL(args[0]).openStream();
IOUtils.copyBytes(in,System.out,4096,false);
}finally{
IOUtils.closeStream(in);
}
}
}
将上述代码编写为URLCat.java文件
1、文件位置:在~desktop/javaTest/URLCat.java
2、在hadoop目录下创建一个class文件夹:[root@localhost hadoop-2.9.0]# mkdir class
3、编译:[root@localhost hadoop-2.9.0]# javac-classpath ${HADOOP_HOME}/share/hadoop/common/hadoop-common-2.9.0.jar -d${HADOOP_HOME}/class ~/Desktop/javaTest/URLCat.java
4、需要把class这个文件夹的路径添加到hadoop/etc/hadoop-env.sh中
exportHADOOP_CLASSPATH="/usr/hadoop-2.9.0/class"
加入和保存关闭即可
5、运行:[root@localhost hadoop-2.9.0]#bin/hadoop URLCat hdfs://localhost:9000/user/yangxw/11.cfg