hadoop实验——Java连接hadoop,对hadoop进行管理教程

到官网下载eclipse,这里我下载2021-6版本的eclipse,网站https://www.eclipse.org/downloads/packages/

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第1张图片

(2)解压刚刚下载好的eclipse压缩包,可以到文件夹中双击带有一个大齿轮图片文件名为eclipse的文件来启动安装程序

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第2张图片

也可以通过shell命令执行eclipse-init文件来安装,如下图:

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第3张图片

(3)安装选择java Developers选项

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第4张图片 

(4)创建java项目,新建java类

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第5张图片

(5)导入hdfs所需的jar包,jar包在在安装hadoop目录下的share目录下的hadoop目录下的四个目录,这里我导入jar包的方法是将share目录下的hadoop目录复制粘贴到eclipse的java项目中再将jar包解析

Jar包所在复制文件夹:

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第6张图片

我这里鼠标右击hdfs_project然后粘贴刚刚复制的hadoop文件夹

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第7张图片 

然后左边窗口出现hadoop文件夹,进去选择jar包然后鼠标右击,执行如下图操作。

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第8张图片 

导包成功

(6)接下来是编写java程序

首先得知道连接hadoop的hdfs用到的类,Configuration类用于访问hadoop的配置文件,然后建立连接,说白了,这个类就是从客户端访问服务端的入口,实现如下:

实例化Configuration,conf.set()访问的hadoop地址是hdfs://localhost:9000

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第9张图片

接下来是FileSystem,这是一个抽象类,这个类是非常重要的类,通常就是用该类来对hadoop中存储的文件进行增删改查,它有很多方法,可查看hadoop API帮助文档进行了解与使用,文档网址在线文档-hadoop

FileSystem.get()获取与hadoop连接,看帮助文档可知道返回的类型与输入的形参类型

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第10张图片 

FileSystem类提供对hadoop的增删改查方法,例如create(Path path)向hadoop创建一个文件,open(Path path)打开hadoop的一个文件,mkdir(Path path)在hadoop中创建一个文件夹等等,这里的Path对应的就是hadoop文件对应的路径,比如mkdir(/user/hadoop/text.txt)就是在hadoop的根目录下的user下的hadoop创建text.txt文件,这个路径可以通过浏览器登录localhost:9870中查看,如下图:

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第11张图片 

一直点下去就会看到我们存的文件

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第12张图片 

如下图,我hadoop网页的/user/hadoop下有下面这些文件:

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第13张图片

下面我举个例子,比如我用java代码读出倒数第二个文件text.txt的内容输出到eclipse的终端上,text.txt的内容如下:

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第14张图片 

Java代码及输出效果如下:

也就几行代码,对hadoop的管理步骤就Configuration类得到访问位置,然后因为hadoopweb所以用FileSystem fs=FileSystem.get(conf);获取与hadoop的网络连接,接下来通过设置Path访问路径,然后fs.open(path)打开指定文件得到一个字节流InputSystem对象,最后再通过read()方法读取文件内容。

hadoop实验——Java连接hadoop,对hadoop进行管理教程_第15张图片

 

你可能感兴趣的:(ubuntu,Java应用,hadoop,java,大数据)