(前提已经配置好HADOOP_HOME的环境变量,用的是hadoop2.7.2)
1.创建Maven工程HdfsClient




2.导入相应的依赖坐标+日志添加

在上面箭头指的文件夹里添加下面的代码

<dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>RELEASE</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.8.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>2.7.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-client</artifactId><version>2.7.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-hdfs</artifactId><version>2.7.2</version></dependency><dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>1.8</version><scope>system</scope><systemPath>${JAVA_HOME}/lib/tools.jar</systemPath></dependency>
</dependencies>

在项目的src/main/resources目录下新建log4j.properties的文件


在文件中填入下面的代码

log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

3.新建包,然后在包里创建HdfsClient类


4.上传文件代码并运行

@Testpublic void testCopyFromLocalFile() throws IOException, InterruptedException, URISyntaxException {//获取fs对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), conf, "xzc");//上传APIfs.copyFromLocalFile(new Path("S:\\centos学习笔记\\banzhang.txt"), new Path("/xiaohua.txt"));//关闭资源fs.close();}

运行结果

5.下载文件代码并运行

 //文件下载@Testpublic void testCopyToLocalFile() throws IOException, InterruptedException, URISyntaxException {//获取fs对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), conf, "xzc");//执行下载操作fs.copyToLocalFile(new Path("/xiaohua.txt"), new Path("S:\\centos学习笔记") );//关闭资源fs.close();System.out.println("over");}

运行结果

6.删除文件夹代码并运行

 @Testpublic void testDelete() throws IOException, InterruptedException, URISyntaxException {//获取fs对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), conf, "xzc");//文件删除fs.delete(new Path("/user"), true);//关闭资源fs.close();}

运行结果

HDFS文件上传、下载和删除案例相关推荐

  1. minio实现文件上传下载和删除功能

    前言 之前用到文件上传功能,在这里做个学习记录.使用minio实现,后面会记录使用fastdfs和阿里云的oss实现文件上传以及他们的比较(oss根据流量收费).minio的中文文档:https:// ...

  2. 百度云和阿里云实现文件上传下载和删除功能

    百度云和阿里云类似,本文以百度云为例. 创建百度云对象存储实例 1. 进入百度云官网找到对象存储BOS 2.创建Bucket 3.客户端认证信息 accessKeyId和accessKeySecret ...

  3. [转]文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1

    转自:http://blog.csdn.net/soarheaven/archive/2008/12/08/3474152.aspx 最近项目需要对FTP服务器进行操作,现把实现总结如下: 打算分2篇 ...

  4. springboot文件上传下载实战 ——文件上传、下载、在线打开、删除

    springboot文件上传下载实战 文件上传 文件上传核心 UserFileController 文件上传测试 文件下载与在线打开 文件下载.在线打开核心 UserFileController 文件 ...

  5. Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1...

    相关文章导航 Sql Server2005 Transact-SQL 新兵器学习总结之-总结 Flex,Fms3相关文章索引 FlexAir开源版-全球免费多人视频聊天室,免费网络远程多人视频会议系统 ...

  6. 6.HDFS文件上传和下载API

    HDFS文件上传和下载API package hdfsAPI;import org.apache.hadoop.conf.Configuration; import org.apache.hadoop ...

  7. java 瑞吉外卖day4及补全功能 文件上传下载 菜品分页查询 Dto类 菜品状态修改 菜品停售以及菜品删除

    文件上传下载 文件下载介绍 文件上传代码实现 服务端上传: @RestController @RequestMapping("/common") @Slf4j public cla ...

  8. kingedit 上传php_php文件上传下载实例(实现最简单的网盘功能)

    本人是一个新手代码狗,第一次发表博客,欢迎大大们指点! 最近手头有一个文件上传下载的案例,跟大家一起分享一下作为一个新手的苦逼成长历程! 话不多说,先上代码: 一:这个是一个文件上传的html页面,小 ...

  9. 文件上传表单 上传文件的细节 文件上传下载和数据库结合

    1 文件上传表单    1)上传文件的本质是文本复制的过程    2)技术层面,在Java中一定会用到IO操作,主要以二进制方式读写    3)传统方式下,对于上传文件字段不同的浏览器有着不同的解析方 ...

  10. Django实战之文件上传下载

    项目介绍 最近学习django,通过文件上传下载这个小项目,总结下常用的知识点. 做这个案例我有以下需求: 1.要支持一次上传多个文件 2.支持上传后记录上传的数据以及列表展示 3.支持下载和删除文件 ...

最新文章

  1. Android运行报错avd,Android Studio出错:无法在模拟器中启动AVD
  2. CString 用法
  3. 简单易用的库存管理软件、进销存软件
  4. python tkinter-单选、多选
  5. CTO 说,再用错@Autowired 和@Resource 就可以领盒饭了
  6. python抓取网站内容_python抓取网站内容详细
  7. java计算机毕业设计英语课程学习网站源程序+mysql+系统+lw文档+远程调试
  8. python樱桃小丸子_appium+python自动化启动app
  9. 微软邮箱服务器出问题了,在微软邮箱登录时常见的问题有哪些
  10. 高德地图php接口,简单使用高德地图开放平台API
  11. windows2008R2新增磁盘处于脱机状态及介质写入受保护解决办法
  12. 文创样机大合集100套,设计师必备
  13. Omdia 表示,智能手机出货量下降 12.9%
  14. 0x01位运算——a^b
  15. css3中的2D和3D转换、动画效果以及布局
  16. wordpress插件API入口
  17. 黑客攻击无孔不入:连电影字幕都能被入侵
  18. 国科大计算机学院推免,电子科技大学2020届保研率17.8%,主要保研本校、国科大、北大、中科大...
  19. 双网卡设置方法_无线和有线网络同时启用
  20. python Modbus CRC16 校验计算公式加源码

热门文章

  1. 【 FPGA 】认识关键BUFFER
  2. Python入门篇-数据结构堆排序Heap Sort
  3. 两年JAVA程序员的面试总结
  4. SpringMVC数据绑定与转换代码分析
  5. SVN删除文件及其恢复问题详解
  6. 深度学习对抗样本的八个误解与事实
  7. 关于sybase的调优
  8. 《高性能javascript》 领悟随笔之-------DOM编程篇(二)
  9. 家中电脑无法共享,联通域名解析劫持竟是罪魁
  10. TreeView控件中实现拖拽的功能