IDEA连接HDFS

tech2026-10-04  2

首先新建maven项目,选择archetype选择quickstart 可以参照IDEA创建Maven项目 创建好的maven项目的pom.xml很冗长,只需保留如下部分即可

在内添加依赖

<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.6.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>2.6.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-core</artifactId> <version>1.2.0</version> </dependency>

这个是建好的maven项目目录 在com包下新建包hdfs(java文件不要与App同级),新建类TestHDFS

public class TestHDFS { public static void main(String[] args) { /** * 下面三句可简写为 * FileSystem fs2 = FileSystem.get(new URI("hdfs://192.168.233.134:9000"),new Configuration(),"root"); * 三个参数分别代表:文件系统地址,获取配置信息对象,用户名称 */ //获取配置信息对象 Configuration conf = new Configuration(); //指定默认的文件系统 conf.set("fs-defaultFS","hdfs://192.168.233.134:9000"); FileSystem fs = null; //获取文件系统 try { fs = FileSystem.get(conf); // 在hdfs新建目录 /com/hdfs/myhdfs fs.mkdirs(new Path("com/hdfs/myhdfs")); // 上传README.txt到/com/hdfs/myhdfs,第一个参数为本地文件地址,第二个为要上传到的hdfs地址 fs.copyFromLocalFile(new Path("f:/README.txt"),new Path("/com/hdfs/myhdfs/README.txt")); // 将hdfs中的/com/hdfs/myhdfsREADME.txt下载到hello.txt,第一个参数为要hdfs地址,第二个为本地文件地址 fs.copyFromLocalFile(new Path("/com/hdfs/myhdfs/README.txt"),new Path("hello.txt")); // 创建/com/hdfs/myhdfs/mySecondHdfs,再删除mySecondHdfs fs.mkdirs(new Path("com/hdfs/myhdfs/mySecondHdfs")); fs.deleteOnExit(new Path("com/hdfs/myhdfs/mySecondHdfs")); } catch (IOException e) { e.printStackTrace(); } } }

创建文件并上传文件成功

从hdfs将文件下载到hello.txt

最新回复(0)