先挖坑写上框架,连续快一个月无休了,伙伴们多点几个赞给我继续写下去的动力。
安装IDEA
安装Maven插件,并配置环境变量
安装Hadoop,并配置环境变量
创建Maven项目
注意红框内名称保持一致。
出现此页面,说明配置成功。
导入依赖
在pom.xml添加如下代码
<dependencies>
<!--测试Test需要的包依赖-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!--添加日志需要的包依赖-->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.12.0</version>
</dependency>
<!--hadoop的依赖包-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>3.1.3</version>
</dependency>
</dependencies>
点击图中标红的地方,导入依赖包。
出现红框中的内容说明导入成功。
如果此处导入包不成功,请看博主安装Maven插件的博客解决问题。
填入配置文件
在项目的src/main/resources目录下,新建一个文件,命名为“log4j2.xml”,在文件中填入如下数据:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="error" strict="true" name="XMLConfig">
<Appenders>
<!-- 类型名为Console,名称为必须属性 -->
<Appender type="Console" name="STDOUT">
<!-- 布局为PatternLayout的方式,
输出样式为[INFO] [2018-01-22 17:34:01][org.test.Console]I'm here -->
<Layout type="PatternLayout"
pattern="[%p] [%d{yyyy-MM-dd HH:mm:ss}][%c{10}]%m%n" />
</Appender>
</Appenders>
<Loggers>
<!-- 可加性为false -->
<Logger name="test" level="info" additivity="false">
<AppenderRef ref="STDOUT" />
</Logger>
<!-- root loggerConfig设置 -->
<Root level="info">
<AppenderRef ref="STDOUT" />
</Root>
</Loggers>
</Configuration>
创建包名
创建包名com.yuaf.Hdfs
创建HDFSClient类
在包下创建HdfsClient
注意下面的代码,你拷贝过去时会报红,因为你需要导包,需要导入hadoop相应的包
//这个Before是Test的依赖包里的方法,后面After,Test同理。
@Before
public void before() throws URISyntaxException, IOException, InterruptedException {
//获取系统文件
Configuration configuration = new Configuration();
//配置在集群上运行
fs = FileSystem.get(new URI("hdfs://hadoop22:9820"), configuration, "yuaf");
}
@After
//关闭资源
public void after() throws IOException {
fs.close();
}
创建目录方法