HDFS-JAVA操作
来源:互联网 发布:琅琊榜出口数据 编辑:程序博客网 时间:2024/05/02 02:39
HDFS-JAVA操作
今天在Spring整合HDFS时回顾了一下这块的内容 顺手一起分享给大家
1、创建一个项目
2、导入相关的Jar包
创建一个JUint测试类:
package com.hdfs.testHdfs;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.net.URI;import org.apache.commons.compress.utils.IOUtils;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataInputStream;import org.apache.hadoop.fs.FSDataOutputStream;import org.apache.hadoop.fs.FileStatus;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.junit.Before;import org.junit.Test;/** * * Title: HDFSTest * Description: 测试HDFS * Company: http://blog.csdn.net/lu1005287365/ * @authorLYW * @date2016年3月22日 19:35:07 * @version 1.0 */public class HDFSTest {// hdfs操作核心类FileSystem fileSystem = null;@Beforepublic void setUp() throws Exception {URI uri = new URI("hdfs://hadoop:9000");Configuration configuration = new Configuration();/** * 这里Root如果不设置的话 将没有权限 * 这里推荐使用root 不设置 可以在hdfs-site.xml配置 意思是关闭权限验证 * 所有用户都可以操作 * <property> <name>dfs.permissions</name> <value>false</value> </property> * */fileSystem = FileSystem.get(uri, configuration, "root");}@Testpublic void getPathAllFiles() throws Exception {// 递归方式取得指定目录下的文件信息FileStatus[] fileStatus = fileSystem.listStatus(new Path("/"));// 输出取得的文件权限和文件名称System.out.println("权限\t\t名称\t\t文件大小\t 修改时间");for (FileStatus fileStatus1 : fileStatus) {System.out.print(fileStatus1.getPermission() + "\t" + fileStatus1.getPath());System.out.print("\t"+fileStatus1.getLen());System.out.print("\t"+fileStatus1.getModificationTime());System.out.println();}}// 上传@Testpublic void put() throws Exception {// 如果同名是否覆盖 boolean overwrite = true;// DFS文件输出流FSDataOutputStream outputStream = fileSystem.create(new Path("/测试文件.zip"), overwrite);// 本地输入流InputStream inputStream = new FileInputStream("D://测试文件.zip");// 使用工具类上传IOUtils.copy(inputStream, outputStream, 4096);}// 下载@Testpublic void get() throws Exception {// DFS文件输入流FSDataInputStream inputStreamOption = fileSystem.open(new Path("/测试文件.zip"));// 本地文件输出流OutputStream outputStream = new FileOutputStream("E:\\测试文件.zip");// 使用工具类下载IOUtils.copy(inputStreamOption, outputStream, 4096);}// 删除@Testpublic void del() throws Exception {fileSystem.delete(new Path("/input"), true);}}
上面是一些简单的HDFS操作 希望能够喜欢
0 0
- HDFS java 操作 HDFS
- java操作HDFS文件系统
- 使用java操作HDFS
- Java API操作HDFS
- java对hdfs操作
- HDFS 的 JAVA操作
- java操作hdfs
- 使用java操作hdfs
- hadoop java操作hdfs
- java操作hdfs
- java操作hdfs
- Java 访问 HDFS操作
- HDFS-JAVA操作
- Java API操作HDFS
- Java操作HDFS对象
- hdfs java操作
- java操作hdfs
- JAVA操作HDFS案例
- RESTful API 设计指南
- Java线程池ExecutorService 的理解与使用
- linux兴趣小组暑假第四次讲座总结
- Java基础总结(内部版)
- 使用 RxJava 从多种来源中加载数据
- HDFS-JAVA操作
- KMP算法(重点next数组计算)
- js部分代码执行机制
- 异常,try,catch,throw,throws,文件,file
- jsp base标签与meta标签学习小结
- response.setContentType(MIME)
- 开源GIS_JDK的安装
- ListView嵌套GridView
- [转]Troubleshooting Error 18456