学分高考 Java

大数据培训_使用maven工程构建java 的hadoop客户端

发布时间: 2022-03-17 18:00:01

大数据培训_使用maven工程构建java 的hadoop客户端

项目说明
通过java操作hadoop中的hdfs分布式文件系统,首先我们要建新一个maven的java工程,然后在pom.xml导入hadoop的如果的依赖java包。再编写一个java的测试类去连接hadoop的集群环境。
注意hadoop集群版本与导入hadoop-client的版本要一致,避免产生其它的问题。

工程目录

大数据培训

​导入Maven的依赖包​

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>

​编写一个hadoop的客户端类操作hadoop集群​

packagenet.togogo.hdfs;

importorg.apache.hadoop.conf.Configuration;
importorg.apache.hadoop.fs.FileSystem;
importorg.apache.hadoop.fs.LocatedFileStatus;
importorg.apache.hadoop.fs.Path;
importorg.apache.hadoop.fs.RemoteIterator;
importorg.junit.Before;
importorg.junit.Test;

importjava.io.IOException;
importjava.net.URI;


publicclassHdfsClient{

privateFileSystemfs=null;


@Before
publicvoidinit() {
System.out.println(" init methon start ....");
try{
Configurationconf=newConfiguration();
//连接集群的地址
URIuri=newURI("hdfs://192.168.20.32:9000");
fs=FileSystem.get(uri,conf,"hd");
System.out.println("FileSystem---->"+fs);
} catch(Exceptione) {
e.printStackTrace();
}
System.out.println(" init methon end ....");
}


@Test
publicvoidlistRoot() {
try{
System.out.println("listRoot method ....");
//访问 hadoop fs -ls /
RemoteIterator<LocatedFileStatus>it=fs.listFiles(newPath("/"),true);
//循环
while(it.hasNext()) {
LocatedFileStatuslf=it.next();
System.out.println(lf.getPath().getName());
}
fs.close();
} catch(Exceptione) {
e.printStackTrace();
}
}


@Test
publicvoidmkdir() {
try{

Pathpath=newPath("/test0831");
fs.mkdirs(path);
fs.close();
} catch(IOExceptione) {
e.printStackTrace();
}
}


@Test
publicvoidupload() {
try{
Pathsrc=newPath("F:/hello.log");
Pathdst=newPath("/");
fs.copyFromLocalFile(src,dst);
} catch(IOExceptione) {
e.printStackTrace();
}
}



@Test
publicvoiddownload() {
try{
Pathsrc=newPath("/hello.log");
Pathdst=newPath("F:/dsthello.log");
fs.copyToLocalFile(src,dst);

} catch(IOExceptione) {
e.printStackTrace();
}
}
}


温馨提示:
本文【大数据培训_使用maven工程构建java 的hadoop客户端】由作者教培参考提供。该文观点仅代表作者本人,学分高考系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 学分高考 All Rights Reserved 版权所有. 湘ICP备17021685号