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

Java fastdfs客戶端實現(xiàn)上傳下載文件

 更新時間:2020年10月09日 08:58:52   作者:一路繁花似錦繡前程  
這篇文章主要介紹了Java fastdfs客戶端實現(xiàn)上傳下載文件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

一、項目結(jié)構(gòu)

二、pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.example</groupId>
  <artifactId>A01fastdfs</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <!-- https://mvnrepository.com/artifact/net.oschina.zcx7878/fastdfs-client-java -->
    <dependency>
      <groupId>net.oschina.zcx7878</groupId>
      <artifactId>fastdfs-client-java</artifactId>
      <version>1.27.0.0</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13</version>
      <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-io -->
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-io</artifactId>
      <version>1.3.2</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.9</source>
          <target>1.9</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

三、fastdfs-client.properties

#http連接超時時間
fastdfs.connect_timeout_in_seconds=5
#tracker和storage網(wǎng)絡(luò)通信超時時間
fastdfs.network_timeout_in_seconds=30
#字符編碼
fastdfs.charset=utf-8
#tracker服務(wù)器地址,多個地址中間用英文逗號分隔
fastdfs.tracker_servers=192.168.2.105:22122

四、測試

package com.wuxi.test;

import org.csource.fastdfs.*;
import org.junit.Test;

import java.io.File;
import java.io.FileOutputStream;

public class MyTest {
  //上傳文件
  @Test
  public void testUpload() {
    try {
      //加載fastdfs-client.properties配置文件
      ClientGlobal.initByProperties("config/fastdfs-client.properties");
      //定義TrackerClient,用于請求TrackerServer
      TrackerClient trackerClient = new TrackerClient();
      //連接tracker
      TrackerServer trackerServer = trackerClient.getConnection();
      //獲取storage
      StorageServer storeStorage = trackerClient.getStoreStorage(trackerServer);
      //創(chuàng)建storageClient
      StorageClient1 storageClient1 = new StorageClient1(trackerServer, storeStorage);
      //向storage服務(wù)器上傳文件
      //本地文件的路徑
      String path = "F:/java/resource/data.txt";
      //上傳成功后拿到文件Id
      String fileId = storageClient1.upload_file1(path, "txt", null);
      System.out.println(fileId);//group1/M00/00/00/wKgCaV9vaSaARBTKAAAAGjJpL2g017.txt
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  //下載文件
  @Test
  public void testDownload() {
    try {
      //加載fastdfs-client.properties配置文件
      ClientGlobal.initByProperties("config/fastdfs-client.properties");
      //定義TrackerClient,用于請求TrackerServer
      TrackerClient trackerClient = new TrackerClient();
      //連接tracker
      TrackerServer trackerServer = trackerClient.getConnection();
      //獲取storage
      StorageServer storeStorage = trackerClient.getStoreStorage(trackerServer);
      //創(chuàng)建storageClient
      StorageClient1 storageClient1 = new StorageClient1(trackerServer, storeStorage);
      //下載文件
      //文件id
      String fileId = "group1/M00/00/00/wKgCaV9vaSaARBTKAAAAGjJpL2g017.txt";
      byte[] bytes = storageClient1.download_file1(fileId);
      //使用輸出流保存文件
      FileOutputStream fileOutputStream = new FileOutputStream(new File("F:/data.txt"));
      fileOutputStream.write(bytes);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談一下Java中枚舉的用法

    淺談一下Java中枚舉的用法

    這篇文章主要介紹了淺談一下Java中枚舉的用法,枚舉是一個被命名的整型常數(shù)的集合,用于聲明一組帶標(biāo)識符的常數(shù),當(dāng)一個變量有幾種固定可能的取值時,就可以將它定義為枚舉類型,需要的朋友可以參考下
    2023-04-04
  • 一文帶你搞懂Java單例模式

    一文帶你搞懂Java單例模式

    單例就是單實例的意思,即在系統(tǒng)全局,一個類只創(chuàng)建一個對象,并且在系統(tǒng)全局都可以訪問這個對象而不用重新創(chuàng)建。本文將通過示例為大家詳細(xì)講解Java單例模式的使用,需要的可以參考一下
    2022-11-11
  • mybatis update set 多個字段實例

    mybatis update set 多個字段實例

    這篇文章主要介紹了mybatis update set 多個字段實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Java中多種循環(huán)Map的常見方式詳解

    Java中多種循環(huán)Map的常見方式詳解

    Java中的Map是一種鍵值對存儲的數(shù)據(jù)結(jié)構(gòu),其中每個鍵都唯一,與一個值相關(guān)聯(lián),下面這篇文章主要給大家介紹了關(guān)于Java中多種循環(huán)Map的常見方式,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2024-01-01
  • mybatis使用foreach標(biāo)簽進行嵌套插入

    mybatis使用foreach標(biāo)簽進行嵌套插入

    數(shù)據(jù)庫插入操作常見于多層架構(gòu)設(shè)計中,本文提供了一個具體的實現(xiàn)方案,涉及三層實體類結(jié)構(gòu),第一層實體類負(fù)責(zé)基本數(shù)據(jù)結(jié)構(gòu)的定義,第二層和第三層實體類則提供更詳細(xì)的業(yè)務(wù)邏輯處理,同時,文章還介紹了相應(yīng)的mapper接口和配置文件設(shè)置
    2024-09-09
  • SpringBoot進行數(shù)據(jù)加密和解密的詳細(xì)指南

    SpringBoot進行數(shù)據(jù)加密和解密的詳細(xì)指南

    對稱加密算法使用相同的密鑰進行加密和解密,其主要優(yōu)點包括速度快和實現(xiàn)簡單,常見的對稱加密算法有 AES、DES 等,本文將以 AES 為例,展示如何在 Spring Boot 項目中進行數(shù)據(jù)加密和解密,需要的朋友可以參考下
    2024-11-11
  • spring啟動后保證創(chuàng)建的對象不被垃圾回收器回收

    spring啟動后保證創(chuàng)建的對象不被垃圾回收器回收

    最近看到一個問題是,spring在啟動后如何保證創(chuàng)建的對象不被垃圾回收器回收?。所以本文結(jié)合jvm的垃圾回收機制和spring中的源代碼做出自己的一點猜測。有需要的朋友們可以參考借鑒。
    2016-09-09
  • Spring boot框架下的RabbitMQ消息中間件詳解

    Spring boot框架下的RabbitMQ消息中間件詳解

    這篇文章詳細(xì)介紹了Spring Boot框架下的RabbitMQ消息中間件的基本概念、消息傳輸模型、環(huán)境準(zhǔn)備、Spring Boot集成以及消息生產(chǎn)和消費,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • SpringBoot整合Redis實現(xiàn)訪問量統(tǒng)計的示例代碼

    SpringBoot整合Redis實現(xiàn)訪問量統(tǒng)計的示例代碼

    本文主要介紹了SpringBoot整合Redis實現(xiàn)訪問量統(tǒng)計的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • MyBatis驗證多級緩存及 Cache Aside 模式的應(yīng)用小結(jié)

    MyBatis驗證多級緩存及 Cache Aside 模式的應(yīng)用小結(jié)

    本文介紹了MyBatis的多級緩存機制,包括本地緩存和全局緩存,并通過Spock測試框架驗證了多級緩存的實現(xiàn),本文結(jié)合實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-12-12

最新評論

盈江县| 宜兴市| 酒泉市| 濮阳市| 宾川县| 两当县| 绥阳县| 库车县| 大城县| 元氏县| 晋中市| 宁武县| 石河子市| 芷江| 高邑县| 靖边县| 项城市| 武城县| 通山县| 平阴县| 台前县| 灵石县| 柯坪县| 泗水县| 嘉义市| 开远市| 分宜县| 萨迦县| 西峡县| 澎湖县| 南岸区| 凌海市| 辉县市| 兴海县| 河北区| 襄樊市| 渭源县| 汾西县| 卢湾区| 宁阳县| 炉霍县|