继续上周开启telnet的过程,这个过程发现win10上运行不了telnet的命令

原因大概在于没有开启telnet服务,从网上下载好telent服务端,安装后继续尝试是否能在win10上使用hadoop

安装完成后,现在在CMD命令中能够连通telnet

接着开启,eclipse 进入上周的上传过程

hadoop上传实验成功!!!

留下了感动了泪花

以下功能,通过网址:https://blog.csdn.net/HcJsJqJSSM/article/details/83418976的教程参考学习

1.实现删除目录的功能

进入网址中查看是否存在相应的目录

网址中存在相应的目录

测试成功将其封装为一个方法:

2.删除文件功能

测试成功

目标网址中相应目录被删除

将其封装为一个方法:

3.实现上传文件

首先在d盘里面创建一个hadoop.txt的文件,然后在文件里面写上12315的内容,该内容总共5个字节

接着在main里面写上下列的代码

执行程序

执行后,在对应位置能够看到相应的文件

如图:

将其封装为一个方法:

4.实现下载文件

在main中写入下列的函数:

将刚刚上传的hadoop.txt文件下载到d盘的hadoop1.txt中

执行结果:

将其封装为一个方法:

至此,hadoop的在java上基本操作的被封装成一个简单的类了。

其代码如下:

package hadoop;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
import java.net.URISyntaxException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils; public class HDFSDemo { public final String hd_uri = "hdfs://192.168.57.128:9000";
public final String hd_owner = "hadoop"; public static void main(String[] args) throws IOException, InterruptedException, URISyntaxException { // HDFSDemo down=new HDFSDemo(); }
public void downloadFile(String path,String source) throws IOException, InterruptedException, URISyntaxException
{
// 使用root权限,URI就是之前hadoop配置的路径.9000端口.
FileSystem fs=getFileSystem();
// 实现HDFS内的文件下载至本地
InputStream in=fs.open(new Path(path));
// 下载到本地,保存后的名称是hadoop.txt
OutputStream out=new FileOutputStream(source);
// 按照字节的方式复制.buffersize是4K,写完后返回true.
IOUtils.copyBytes(in, out, 4096, true);
//关闭流
fs.close();
}
public void updateFile(String source,String path) throws IOException, InterruptedException, URISyntaxException
{
// 使用root权限,URI就是之前hadoop配置的路径.9000端口.
FileSystem fs=getFileSystem();
// 实现上传文件,首先是读取本地的文件
InputStream in=new FileInputStream(source);
// 上传文件到HDFS的指定目录下.
OutputStream out=fs.create(new Path(path));
// 按照字节的方式复制.buffersize是4K,写完后返回true
IOUtils.copyBytes(in, out, 4096, true);
// 关闭流
fs.close();
} public boolean deleteFileSystem(String path) throws IOException, InterruptedException, URISyntaxException
{
//删除目录
// 使用root权限,URI就是之前hadoop配置的路径.9000端口.
FileSystem fs=getFileSystem();
// 删除一个文件夹,这里从HDFS的根目录写起的,如果是单个文件就是false,目录下面有目录就true.
@SuppressWarnings("deprecation")
Boolean flag=fs.delete(new Path(path));
// 关闭
fs.close();
return flag;
} public boolean createFileSystem(String path) throws IOException, InterruptedException, URISyntaxException
{
//创建目录
// 使用root权限,URI就是之前hadoop配置的路径.9000端口.
FileSystem fs=getFileSystem();
// 创建一个文件夹,这里从HDFS的根目录写起的.
Boolean flag=fs.mkdirs(new Path(path));
//关闭流
fs.close();
return flag;
} public FileSystem getFileSystem() throws IOException, InterruptedException, URISyntaxException
{
FileSystem fs=FileSystem.get(new URI(hd_uri), new Configuration(),hd_owner);
return fs;
} }

第六周之Hadoop学习(六)的更多相关文章

  1. 20145330第六周《Java学习笔记》

    20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...

  2. 20175215 2018-2019-2 第六周java课程学习总结

    第七章 内部类与异常类 1.内部类 Java支持在一个类中定义另一个类,这样的类称作内部类,而包含内部类的类成为内部类的外嵌类 内部类和外嵌类之间重要关系如下 内部类的外嵌类的成员变量在内部类中仍然有 ...

  3. 大二暑假第六周总结--开始学习Hadoop基础(五)

    简单学习数据仓库HIVE HIVE是一个构建于Hadoop顶端的数据仓库工具 支持大规模数据存储,分析,具有良好的可扩展性 某种程度上可以看做是用户编程接口,本身不存储和处理数据 依赖分布式系统HDF ...

  4. 第六周实验总结&学习总结

    一.实验目的 (1)掌握类的继承方法 (2)变量的继承和覆盖,方法的继承,重载和覆盖实现 二.实验内容 源代码 package java2; import java.util.Scanner; cla ...

  5. hadoop学习(六)----HDFS的shell操作

    HDFS所有命令: [uploaduser@rickiyang ~]$ hadoop fs Usage: hadoop fs [generic options] [-appendToFile < ...

  6. 第六周 day6 python学习笔记

    1.Python面向对象编程OOP(Object Oriented Programming) 封装:可以隐藏实现细节,使代码模块化 继承:可以扩展已存在的代码模块,可以使代码实现重用 多态:一种接口, ...

  7. 第五周之Hadoop学习(五)

    在上周已经完成Hadoop的Java编程环境下的配置,这周则是通过对Eclipse的环境编程对Hadoop的API进行简单的调用 参考地址:https://blog.csdn.net/u0105237 ...

  8. 第二周之Hadoop学习(二)

    这篇博客根据http://dblab.xmu.edu.cn/blog/install-hadoop-in-centos/中的教程进行学习: 首先按照教程的操作的第一步的时候,电脑直接蓝屏了. 但是依然 ...

  9. 第三周之Hadoop学习(三)

    从上周的这篇教程中继续hadoop的安装过程:http://dblab.xmu.edu.cn/blog/install-hadoop-in-centos/ 上节课安装到对hadoop中的输出的文件夹的 ...

随机推荐

  1. 项目出现红色感叹号, pom.xml并出错

    问题描述: eclipse出现红色感叹号,pom.xml 文件也报错  但没有提示具体是那里出错了. 打开 Java Build Path  找到 Librarices 你在看到 Maven  Dep ...

  2. JDK动态代理+反射实现动态修改注解属性值

    这是最近朋友的一个需求,正好闲来无聊有些时间,跟着研究一下,如有不正确的地方,欢迎大家指正~ 一.准备自定义注解 注:如何实现自定义注解,请移步百度. 二.实现 1.实现方式1:通过反射+动态代理动态 ...

  3. Spring JdbcTemplate类常用的方法

    execute(String  sql) 可执行任何sql语句,但返回值是void,所以一般用于数据库的新建.修改.删除和数据表记录的增删改. int  update(String sql) int  ...

  4. 再有人问你HashMap,把这篇文章甩给他!

    声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java==集合中的精髓==了,如果你觉得自己对 ...

  5. 占位符 css

    == 普通的英文半角空格   ==   ==   == no-break space (普通的英文半角空格但不换行)   == 中文全角空格 (一个中文宽度)   ==   == en空格 (半个中文 ...

  6. 喵星之旅-狂奔的兔子-centos7安装MySQL 5.5

    安装环境:https://www.cnblogs.com/kittybunny/p/12296078.html 一.下载安装文件 下载地址 https://downloads.mysql.com/ar ...

  7. 安装和配置Linux系统虚拟机

    1.打开虚拟机软件 2.点击创建新的虚拟机,选择典型(推荐)类型的配置. 3.点击稍后安装操作系统. 4.客户机操作系统选择Linux,版本选择CentOS 7 64位. 5.虚拟机名称可自行更改,位 ...

  8. 10,html全局属性有哪些

    10,html全局属性(global attribute,html属性赋予元素意义和语境,html全局属性可以用于任何的html元素)有哪些 class:为元素设置类标识 data-*:为元素增加自定 ...

  9. CentOS7中JDK的安装和配置

    1.使用yum线上安装jdk 这里以jdk1.7为例进行示范,1.8同理 yum -y list java*                  #浏览线上所有jdk版本列表,列表太长了,会显示不全 y ...

  10. C语言:将字符串中的字符逆序输出,但不改变字符串中的内容。-在main函数中将多次调用fun函数,每调用一次,输出链表尾部结点中的数据,并释放该结点,使链表缩短。

    //将字符串中的字符逆序输出,但不改变字符串中的内容. #include <stdio.h> /************found************/ void fun (char ...