Springboot连接HDFS

HDFS Java API 与 Spring Boot 3.x 集成:实现文件上传下载REST接口 本文详细介绍了如何将HDFS Java API与Spring Boot 3.x深度集成,构建企业级文件服务的REST接口。通过连接池优化、异常处理、性能监控等生产级策略,实现高效的文件上传下载功能,助力大数据处理与微服务架构的完美融合。 阅读详情

连接HDFS并创建文件夹

1.创建URI对象,参数为HDFS对应ip端口

URI uri = new URI("hdfs://192.168.109.135:9000");

2. 创建连接配置

Configuration configuration = new Configuration();
String user="hadoop";
FileSystem fs = FileSystem.get(uri, configuration,user);

 3.代码

pom依赖导入:

<!-- hadoop 依赖 -->
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-hdfs</artifactId>
      <version>2.7.3</version>
      <exclusions>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
        <exclusion>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
        </exclusion>
        <exclusion>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-common -->
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-common</artifactId>
      <version>2.7.3</version>
      <exclusions>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
        <exclusion>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
        </exclusion>
        <exclusion>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-client</artifactId>
      <version>2.7.3</version>
      <exclusions>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
        <exclusion>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
        </exclusion>
        <exclusion>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.16</version>
      <scope>compile</scope>
    </dependency>

 方法示例:

public String hello() throws URISyntaxException, IOException, InterruptedException {

//        URI uri = new URI("hdfs://192.168.109.135:9000");
//        Configuration configuration = new Configuration();
//        String user="hadoop";
//        FileSystem fs = FileSystem.get(uri, configuration,user);
//        Path path = new Path("/dir/test");
//        fs.mkdirs(path);
//        fs.close();

        //1.获取文件系统
        Configuration configuration = new Configuration();
        String user="hadoop";
        FileSystem fs = FileSystem.get(new URI(nameNode), configuration, user);
        //2.执行操作 创建hdfs文件夹
        Path path = new Path(filePath);
        if (!fs.exists(path)) {
            fs.mkdirs(path);
        }
        //关闭资源
        fs.close();
        System.out.println("结束!");
        return "hello";
    }

可能出现报错:Could not locate executable null \bin\winutils.exe in the hadoop binaries

解决方案:winutils下载地址:winutils

                  添加到系统环境变量HADOOP_HOME重启系统

大数据之_Hadoop工作笔记002---SpringBoot连接Hadoop HDFS进行创建文件夹,添加上传文件,删除文件,下载文件操作 技术交流QQ群【JAVA,.NET,BigData,AI】:170933152 首先,把环境搭好,至今我只搭了非集群的。看另一篇博文, idea开发 1.创建工程,选择:WEB,把web勾上,选择sql,把jdbc,mysql,mybatis勾上 2.配置文件 E:\IdeaWkSpace\hadoopdemo\src\main\resources\application.prop... 阅读详情

相关推荐

使用springboot基于hdfs和HBase实现的一个海量的对象存储服务.zip

人工智能-hdfs

SpringBoot集成Hadoop——对HDFS的文件操作

文章目录 一、对HDFS操作设计以下几个主要的类 二、依赖配置 三、HDFS文件操作接口开发 四、一些测试结果截图 一、对HDFS操作设计以下几个主要的类: Configuration:封装了客户端或者服务器的配置信息; FileSystem:此类的对象是一个文件系统对象,可以用该对象的一些方法来对文件进行操作通过FileSystem的静态方法get获得该对象,例:FileSystem hdfs = FileSystem.get(conf); FSDataInputStream:这是HDFS中的输入

weixin_45131680的博客 1977

pytorch图像分类篇: 花分类数据集下载和AlexNet网络搭建训练

一、花分类数据集下载 data_setdata_set该文件夹是用来存放训练数据的目录 使用步骤如下: (1)在data_set文件夹下创建新文件夹"flower_data" (2)点击链接下载花分类数据集 (3)解压数据集到flower_data文件夹下 (4)执行"flower_data.py"脚本自动将数据集划分成训练集train和验证集val ├── flower_data ├── flower_photos(解压的数据集文件夹,3670个样本) ...

橙子的博客 8219

hdfs集成springboot使用

1)方法1:通过将hdfs的两个配置文件(hdfs-site.xml、core-site.xml)放到resources文件夹下后,新建Configuration的时候设置为true会自动读取,也可以通过conf.set(“配置”,“值”)来修改配置项。11)递归查询目录所有文件信息,比listStatus多了文本大小,副本系数,块大小信息。3)创建文件夹并设置权限为文件所有者可读可写,文件所有组可读可写,其他人可读。10)输出所有列表所有文件和文件夹信息。13)查询文件块信息并跳转读取。

weixin_45880765的博客 1064

02-Cesium-实现天地图标记

首先天地图申请token,然后Cesium-实现天地图标记详细说明

m0_62785037的博客 1171

如何将rvt(BIM)转换为点云格式

1、为什么将BIM转换为点云格式? 如何使设计BIM与真实场景进行配准,分析在建、未建、已建构建的情况,真实场景是通过点云生产的,和点云配准需要相同的格式。 2、如何转换? 实用工具revit,转换过程如下图,这样就可以转换成三角网格形式。 3、FBX还需要进行一次转换,即转换成点云常用的类型,如bin\ply\pcd等格式。 需要软件cloudcompare.exe,软件下载地址百度云 链接:https://pan.baidu.com/s/1pflcKNc04loBnS1yKR39hw 提取码:obaf

self_Name_的博客 4493

2.springboot操作hdfs

记录springboot操作hdfs过程中遇到的一些问题。

m0_37189934的博客 820

省一蓝桥杯嵌入式-09RTC实时时钟

RTC(Real-Time Clock)实时时钟,是一个独立的定时器RTC模块拥有一组连续的计数的计数器,在响应软件配置下,可提供时钟、日历、闹钟功能RTC能提供年月日时分秒等信息(可设置)在系统复位或从待机模式唤醒后,RTC的设置时间维持不变(这个我没实现,复位后时间也重置了,有能力的可以自己研究一下)持续时间跟踪:在主系统断电后或处于低功耗模式时,RTC仍继续工作,原理是有额外的电池为其供电(蓝桥杯板子没有这个备用电源,该功能无效。

qq_46392331的博客 1730

springboot集成hadoop实现hdfs功能

但是,我们是在自己的电脑去访问虚拟机,用的是公网的地址,这样当然是无法访问hdfs的内网地址,也无法和datanode建立正常的输送连接,这也是为什么namenode上有目录,但是大小却为0的原因,也是为什么web界面无法下载文件的原因。所以,我们要去想办法让namenode不要返回datanode的内网地址,而是公网的地址,这样我们才能访问和连接。namenode返回datanode的地址,注意是hdfs文件系统的内网地址!想办法使本地可以访问到 DataNode。

askuld的博客 1824

【局部规划模块轨迹优化算法】Teb_planner规划算法

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对****做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容由于ROS中的局部路径规划器比较老了,所以我推荐大家使用比较新的局部路径规划器teb_local_planner。teb_local_planner是基于弹性时间带碰撞约束的算法,算法将动态障碍物、运行时效、路径平滑性等约束做综合考虑,在复杂环境下有更优秀的表现。

qq_35635374的博客 953

三态门Multisim电路仿真——硬件工程师笔记

三态门原理及应用摘要 三态门是具有高电平(1)、低电平(0)和高阻态(Z)三种输出的逻辑电路,通过使能端(EN)控制状态切换。高阻态时输出端等效断路,避免信号冲突。其核心应用包括: 总线系统:多设备共享总线时,仅使能选中设备的三态门,其余保持高阻态,防止干扰。 数据选择器:利用三态门切换多路输入信号,简化电路设计。 实现方式分两种: TTL三态门(三极管构成):低电平使能有效,仿真验证输出逻辑与高阻态。 MOS三态门(MOS管构成):高电平使能有效,仿真显示使能信号控制输出状态。 文中还附硬件工程师笔试面试

XU157303764的博客 2013

HDFS的API操作(通过springboot实现)

在windows下编程并运行代码对虚拟机中的hadoop集群进行操作。主体内容为讲述如何使用HDFS API对HDFS分布式文件系统进行操作,

m0_52931616的博客 2017

uniapp [全端兼容] - 实现上传本地视频到后端服务器及在线预览播放视频+移除视频+进度条上传,将已选视频上传服务端并可预览视频和删除功能,上传单个或多个视频文件及大文件(H5、小程序、app)

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,uniapp+uview上传视频并预览,UNI-APP视频上传组件,实现视频文件上传视频回显,上传视频并预览、上传多个视频,实现上传视频功能+预览,上传显示视频功能,上传视频预览移除,批量上传视频,上传超大视频文件,视频上传并预览效果,uniapp上传视频,使用uview上传视频及预览,上传视频和删除视频功能,视频流上传播放功能,上传视频到后端,视频上传与实时预览功能,upload上传组件,视频播放器

🏆 前端领域优质创作者 1万+

day02 使用idea新建springboot项目并测试hdfs连接

使用idea创建springboot来操作hdfs

Tgmmmmmmmm的博客 715

ZYNQ PL通过EMIO ETHE1外接PHY由GMII转RGMII

1,设置EMIO方式引出ETHE1 2,从GMII过度到RGMII GMII: 发送 gmii_tx_clk gmii_tx_d[7:0] gmii_tx_en gmii_tx_er 接收 gmii_rx_clk gmii_rx_d[7:0] gmii_rx_dv gmii_rx_er RGMII: 发送 tx_clk tx_d[3:0] tx_ctrl 接收 rx_clk rx_d[3:0] rx_ctrl 首先数据总线从时钟单边沿采样8bit转变为了双边沿采样4bit,从88E1

wangjie36的博客 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

springboot远程连接HDFS-hadoop3.0

一.hadoop前置环境: hadoop3.0+CDH6.1 这里默认已经在linux环境配置好; 如何安装hodoop不在本次范围内; 我的环境: win10 + IDEA2019.3+jdk8 二.准备环境: 1.获取fs.defaultFS链接 在core-site.xml里面 这个等下配置在application.propties里面 2.下载winutils https://gitee.com/bochangguan/winutils/tree/master/hadoop-3.0.0/bi

u011165335的博客 4040

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Java hdfs连接池_Java使用连接池管理Hdfs连接

记录一下Java API 连接hadoop操作hdfs的实现流程(使用连接池管理)。以前做过这方面的开发,本来以为不会有什么问题,但是做的还是坑坑巴巴,内心有些懊恼,记录下这烦人的过程,警示自己切莫眼高手低!一:引入相关jar包如下org.apache.hadoophadoop-common2.8.2org.apache.hadoophadoop-hdfs2.8.2org.apache.commo...

weixin_39948309的博客 490

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JAVA怎么连接华为的HDFS系统_Java使用连接池管理Hdfs连接

记录一下Java API 连接hadoop操作hdfs的实现流程(使用连接池管理)。以前做过这方面的开发,本来以为不会有什么问题,但是做的还是坑坑巴巴,内心有些懊恼,记录下这烦人的过程,警示自己切莫眼高手低!一:引入相关jar包如下org.apache.hadoophadoop-common2.8.2org.apache.hadoophadoop-hdfs2.8.2org.apache.commo...

weixin_32009121的博客 434

Springboot操作Docker中的hadoop

基于Springboot完成对hadoop的数据简单操作

杨宇 826

[Hadoop实现Springboot之HDFS数据查询和插入 ]

马诗二十三首·其四(唐代-李贺) 此马非凡马,房星本是星。 向前敲瘦骨,犹自带铜声。

汤圆的博客 1489

如何快速实现大数据文件在线预览:kkFileView与HDFS集成完整指南

kkFileView是一款基于Spring-Boot的通用文件在线预览项目,支持多种文件格式的在线预览,包括文档、表格、图片、压缩包等。本指南将详细介绍如何将kkFileView与HDFS集成,实现大数据文件的高效预览,帮助新手用户快速上手。 ## 一、kkFileView简介 kkFileView作为一款强大的文件在线预览工具,能够满足企业级应用中对各类文件进行在线查看的需求。它支持多种文件

gitblog_00598的博客 527

Java使用连接池管理Hdfs连接

记录一下Java API 连接hadoop操作hdfs的实现流程(使用连接池管理)。 以前做过这方面的开发,本来以为不会有什么问题,但是做的还是坑坑巴巴,内心有些懊恼,记录下这烦人的过程,警示自己切莫眼高手低! 一:引入相关jar包如下 <dependency> <groupId>org.apache.hadoop<...

weixin_30687811的博客 2771

Springboot with Impala and Kudu

转自 How to run this app Please follow the instructions below to get kudu running locally with java and impala driver. Download the kudu quickstart VM Kudu Quick Start VM Create the departmen...

cnhome的专栏 5687

Hadoop系列——SpringBoot集成Hadoop、实现hdfs上传下载文件(1)

pom.xml <!-- hadoop --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.7.6</version> ...

哈哈书架 4040

phoenix连接hbase报tablenotfound

phoenix连接hbase报tablenotfound

m0_46838494的博客 1564

SpringBoot集成Hadoop系列一 ---- 对HDFS的文件操作

一.对HDFS操作设计以下几个主要的类: Configuration:封装了客户端或者服务器的配置信息 FileSystem:此类的对象是一个文件系统对象,可以用该对象的一些方法来对文件进行操作通过FileSystem的静态方法get获得该对象,例:FileSystem hdfs = FileSystem.get(conf); FSDataInputStream:这是HDFS中的输入流,通过...

汉南最後の読書人 3万+
下一篇: 基于SpringBoot实现邮箱验证码注册
kurtosis_Wu
博客等级 码龄7年 1097粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值