最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

hdfs集成springboot使用方法

 更新時(shí)間:2024年03月30日 10:17:25   作者:鴻12321  
這篇文章主要介紹了hdfs集成springboot使用,配置Configuration信息分為兩種方式,每種方式給大家介紹的非常詳細(xì),需要的朋友可以參考下

1.導(dǎo)入maven依賴(lài)

<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client-api</artifactId>
    <version>3.3.6</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client-runtime</artifactId>
    <version>3.3.6</version>
</dependency>

2.配置Configuration信息

1)方法1:通過(guò)將hdfs的兩個(gè)配置文件(hdfs-site.xml、core-site.xml)放到resources文件夾下后,新建Configuration的時(shí)候設(shè)置為true會(huì)自動(dòng)讀取,也可以通過(guò)conf.set(“配置”,“值”)來(lái)修改配置項(xiàng)

//創(chuàng)建配置,是否引用core-site.xml和hdfs-site.xml配置文件,true是引用
Configuration conf = new Configuration(true);
//創(chuàng)建文件連接流,指定namenode、conf和連接的用戶(hù)名
FileSystem fs = FileSystem.get(new URI("mycluster"),conf,"hadoop");

2)方法2:將Configuration設(shè)置為false,不加載默認(rèn)配置文件,直接指定namenode對(duì)應(yīng)的ip和端口如:hdfs://192.168.132.101:8081替換mycluster

Configuration conf = new Configuration(false);
FileSystem fs = FileSystem.get(new URI("hdfs://192.168.132.101:8081"),conf,"hadoop");

3.hdfs集成springboot基本命令

1)判斷文件是否存在

fs.exists(new Path("/out.txt"))

2)創(chuàng)建文件夾

fs.mkdirs(new Path("/dir1"));

3)創(chuàng)建文件夾并設(shè)置權(quán)限為文件所有者可讀可寫(xiě),文件所有組可讀可寫(xiě),其他人可讀

fs.mkdirs(new Path("/dir2"),new FsPermission(FsAction.READ_WRITE,FsAction.READ_WRITE,FsAction.READ));

4)刪除文件夾

fs.delete(new Path("/dir1"),true);

5)創(chuàng)建文件并輸入文本
如果文件存在,默認(rèn)會(huì)覆蓋, 可以通過(guò)第二個(gè)參數(shù)進(jìn)行控制。第三個(gè)參數(shù)可以控制使用緩沖區(qū)的大小

FSDataOutputStream out = fs.create(new Path("/test.txt"),true, 4096);
out.write("hello hadoop!".getBytes());
out.flush();
out.close();

6)讀取文本

FSDataInputStream inputStream = fs.open(new Path("/test.txt"));
byte[] contextBytes = new byte[1024];
inputStream.read(contextBytes);
String context = new String(contextBytes,"utf-8");
System.out.println(context);

7)文件重命名

boolean result = fs.rename(new Path("/test.txt"), new Path("/testnew.txt"));

8)上傳文件

fs.copyFromLocalFile(new Path("./data/hello.txt"), new Path("/hdfshello.txt"));

9)下載文件

fs.copyToLocalFile(false, new Path("/hdfshello.txt"), new Path("./data/testdata.txt"), true);

10)輸出所有列表所有文件和文件夾信息

FileStatus[] statuses = fs.listStatus(new Path("/"));
for (FileStatus fileStatus : statuses) {
    System.out.println(fileStatus.toString());
}

11)遞歸查詢(xún)目錄所有文件信息,比listStatus多了文本大小,副本系數(shù),塊大小信息

RemoteIterator<LocatedFileStatus> files = fs.listFiles(new Path("/"), true);
while (files.hasNext()) {
    System.out.println(files.next());
}

12)查詢(xún)文件塊信息

FileStatus fileStatus = fs.getFileStatus(new Path("/user/master01/data.txt"));
BlockLocation[] blocks = fs.getFileBlockLocations(fileStatus, 0, fileStatus.getLen());
for (BlockLocation block : blocks) {
    System.out.println(block);
}

13)查詢(xún)文件塊信息并跳轉(zhuǎn)讀取

FileStatus fileStatus = fs.getFileStatus(new Path("/user/master01/data.txt"));
BlockLocation[] blocks = fs.getFileBlockLocations(fileStatus, 0, fileStatus.getLen());
FSDataInputStream input = fs.open(new Path("/user/master01/data.txt"));
input.seek(blocks[1].getOffset());
//input.seek(0)是讓指針回到開(kāi)始
System.out.println(input.readLine());

到此這篇關(guān)于hdfs集成springboot使用的文章就介紹到這了,更多相關(guān)hdfs集成springboot內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中文及特殊字符的校驗(yàn)方法

    java中文及特殊字符的校驗(yàn)方法

    這篇文章主要為大家詳細(xì)介紹了java中文及特殊字符的校驗(yàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • 你知道將Bean交給Spring容器管理有幾種方式(推薦)

    你知道將Bean交給Spring容器管理有幾種方式(推薦)

    Spring核心是?IOC?和?AOP?,我們?cè)赟pring項(xiàng)目中,我們需要將Bean交給Spring容器,也就是IOC管理,這樣你才可以使用注解來(lái)進(jìn)行依賴(lài)注入,這篇文章主要介紹了你知道將Bean交給Spring容器管理有幾種方式,需要的朋友可以參考下
    2022-10-10
  • 在SpringBoot中實(shí)現(xiàn)多種方式登錄(通過(guò)用戶(hù)名、手機(jī)號(hào)、郵箱等)的詳細(xì)指南

    在SpringBoot中實(shí)現(xiàn)多種方式登錄(通過(guò)用戶(hù)名、手機(jī)號(hào)、郵箱等)的詳細(xì)指南

    今天,我們將跳進(jìn) Spring Boot 的世界,探索如何通過(guò) 用戶(hù)名、手機(jī)號(hào)、郵箱 等多種方式實(shí)現(xiàn)登錄,而我們要做的就是為他們提供這些選擇,確保他們都能毫無(wú)阻礙地進(jìn)入我們的系統(tǒng),感興趣的小伙伴跟著小編一起來(lái)看看吧
    2024-11-11
  • java基礎(chǔ)類(lèi)型源碼解析之多角度講HashMap

    java基礎(chǔ)類(lèi)型源碼解析之多角度講HashMap

    這篇文章主要給大家介紹了關(guān)于java基礎(chǔ)類(lèi)型源碼解析之HashMap的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java基具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Spring Boot啟動(dòng)加載流程自動(dòng)配置的底層原理(專(zhuān)家解讀)

    Spring Boot啟動(dòng)加載流程自動(dòng)配置的底層原理(專(zhuān)家解讀)

    Spring Boot這么少的配置卻能實(shí)現(xiàn)如此豐富的功能?為何啟動(dòng)一個(gè)Spring Boot應(yīng)用可以變得如此簡(jiǎn)單便捷?在這個(gè)看似平凡的啟動(dòng)過(guò)程中,其實(shí)隱藏著一套精妙的自動(dòng)化機(jī)制和源碼邏輯,本文將帶你深入探索 Spring Boot 的啟動(dòng)流程,逐步揭開(kāi)自動(dòng)配置的幕后奧秘
    2026-01-01
  • Springboot整合ShardingJdbc實(shí)現(xiàn)分庫(kù)分表方式

    Springboot整合ShardingJdbc實(shí)現(xiàn)分庫(kù)分表方式

    這篇文章主要介紹了Springboot整合ShardingJdbc實(shí)現(xiàn)分庫(kù)分表方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • Java使用list集合remove需要注意的事項(xiàng)(使用示例)

    Java使用list集合remove需要注意的事項(xiàng)(使用示例)

    List集合的一個(gè)特點(diǎn)是它其中的元素是有序的,也就是說(shuō)元素的下標(biāo)是根據(jù)插入的順序來(lái)的,在刪除頭部或者中間的一個(gè)元素后,后面的元素下標(biāo)會(huì)往前移動(dòng),本文給大家介紹Java使用list集合remove需要注意的事項(xiàng),感興趣的朋友一起看看吧
    2022-01-01
  • javaWeb使用Kaptcha組件生成驗(yàn)證碼

    javaWeb使用Kaptcha組件生成驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了javaWeb使用Kaptcha組件生成驗(yàn)證碼的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • SpringSecurity+JWT簡(jiǎn)單集成的實(shí)現(xiàn)

    SpringSecurity+JWT簡(jiǎn)單集成的實(shí)現(xiàn)

    本文主要介紹了SpringSecurity+JWT簡(jiǎn)單集成的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2026-04-04
  • Java線(xiàn)程阻塞工具LockSupport用法詳解

    Java線(xiàn)程阻塞工具LockSupport用法詳解

    Java中的LockSupport是一個(gè)用于線(xiàn)程同步的工具類(lèi),它提供了一種基于線(xiàn)程的阻塞和喚醒機(jī)制,LockSupport可以讓線(xiàn)程在特定條件下阻塞掛起,等待其他線(xiàn)程發(fā)送信號(hào)來(lái)喚醒它,本文將通過(guò)一個(gè)小案例給大家介紹一下LockSupport怎么用,讓你永遠(yuǎn)記住它
    2023-08-08

最新評(píng)論

石棉县| 汶上县| 景谷| 格尔木市| 象山县| 湄潭县| 江口县| 唐海县| 富裕县| 九江县| 潜江市| 宁津县| 修水县| 闽清县| 五台县| 西和县| 陆川县| 上林县| 上饶市| 新邵县| 绥中县| 彭水| 清水县| 乃东县| 嵩明县| 泗阳县| 逊克县| 临泽县| 云浮市| 长沙县| 北川| 仙游县| 永胜县| 德兴市| 贵南县| 呼和浩特市| 武宣县| 平乐县| 永登县| 莱西市| 白沙|