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

Java獲取七牛云存儲空間中圖片外鏈

 更新時間:2023年10月31日 15:11:36   作者:I'm Jie  
本文主要介紹了Java獲取七牛云存儲空間中圖片外鏈,需要獲取在七牛云中存儲的所有圖片,并返回外鏈地址,具有一定的參考價值,感興趣的可以了解一下

七牛云官方文檔:https://developer.qiniu.com/kodo/sdk/java

如果有還不會使用SpringBoot整合七牛云存儲的小伙伴們,可以跳轉(zhuǎn)查看這篇文章:SpringBoot 整合七牛云上傳圖片

在最近的一個項目中,需要獲取在七牛云中存儲的所有圖片,并返回外鏈地址,具體代碼實現(xiàn)如下。

獲取七牛云密鑰

  • 進入七牛云控制臺

    image-20220131212145277

  • 點擊【頭像】→【密鑰管理】

    image-20220131212100619

  • 創(chuàng)建密鑰,復(fù)制保存,下面要用

    image-20220131212314100

導(dǎo)入依賴

  • 從 7.2.24 開始,okhttp3 升級到 3.14.2,其要求 java 1.8 及以上。
  • 若一定 java 1.7 ,請手動指定 okhttp3 依賴 3.12,要求 3.12.3 及以上, com.squareup.okhttp3:okhttp:3.12.3
<!-- https://mvnrepository.com/artifact/com.qiniu/qiniu-java-sdk -->
<dependency>
    <groupId>com.qiniu</groupId>
    <artifactId>qiniu-java-sdk</artifactId>
    <version>7.11.0</version>
</dependency>

編輯 YAML 配置文件

在配置文件中添加七牛云的一些參數(shù):

#七牛云參數(shù)
qiniu:
  accessKey: IrgJ4tvtYwWMr # AK
  accessSecretKey: J-0wUai568ul7L # SK
  bucket: yunpicos # 空間
  prefix: word/ # 文件名路徑前綴,用于過濾,默認為空
  domain: http://img.roman.top/ # 域名

添加七牛云配置類

封裝七牛云需要的配置參數(shù):

@Getter
@Configuration
public class QiNiuConfig {

    //七牛云 ak
    @Value("${qiniu.accessKey}")
    private String accessKey;

    //七牛云sk
    @Value("${qiniu.accessSecretKey}")
    private String secretKey;

    //指定七牛云空間
    @Value("${qiniu.bucket}")
    private String bucket;

    //文件名路徑前綴
    @Value("${qiniu.prefix:}")
    private String prefix;

    //指定目錄分隔符,列出所有公共前綴(模擬列出目錄效果)。缺省值為空字符串
    @Value("${qiniu.delimiter:}")
    private String delimiter;

    //七牛云空間的域名
    @Value("${qiniu.domain:}")
    private String domain;

}

編寫 QiNiuImgUrls 方法

返回所有圖片外鏈的集合,外鏈格式為【域名+文件路徑】:

public List<String> imgUrls(){
  //參數(shù)
  String accessKey = qiNiuConfig.getAccessKey();
  String secretKey = qiNiuConfig.getSecretKey();
  String bucket = qiNiuConfig.getBucket();
  String prefix = qiNiuConfig.getPrefix();
  String delimiter = qiNiuConfig.getDelimiter();
  String domain = qiNiuConfig.getDomain();

  //構(gòu)造一個帶指定 Region 對象的配置類
  Configuration cfg = new Configuration(Region.region0());

  Auth auth = Auth.create(accessKey, secretKey);

  BucketManager bucketManager = new BucketManager(auth, cfg);

  //每次迭代的長度限制,最大1000,推薦值 1000
  int limit = 1000;

  //列舉空間文件列表
  BucketManager.FileListIterator fileListIterator = bucketManager.createFileListIterator(bucket, prefix, limit, delimiter);
  while (fileListIterator.hasNext()) {
    //處理獲取的file list結(jié)果
    FileInfo[] items = fileListIterator.next();
    //stream流過濾掉掉多余的元素,并將其余元素的所有文件路徑和域名進行拼接,返回所有圖片外鏈的集合
    List<String> collect = Arrays.stream(items).filter(f -> !f.key.equals(prefix)).map(f -> domain+f.key).collect(Collectors.toList());
    return collect;
  }
  return null;
}

測試結(jié)果

返回對應(yīng)空間下的所有圖片的外鏈:

image-20230609152419286

到此這篇關(guān)于Java獲取七牛云存儲空間中圖片外鏈的文章就介紹到這了,更多相關(guān)Java獲取七牛云圖片外鏈內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java 實現(xiàn)音樂播放器的簡單實例

    java 實現(xiàn)音樂播放器的簡單實例

    這篇文章主要介紹了java 實現(xiàn)音樂播放器的簡單實例的相關(guān)資料,希望通過本文能幫助到大家,實現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-09-09
  • 詳解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)

    詳解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)

    這篇文章主要介紹了詳解JAVAEE——SSH三大框架整合(spring+struts2+hibernate),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Java雪花算法生成分布式id詳解

    Java雪花算法生成分布式id詳解

    這篇文章主要介紹了Java雪花算法生成分布式id詳解,隨著業(yè)務(wù)的增長,有些表可能要占用很大的物理存儲空間,為了解決該問題,后期使用數(shù)據(jù)庫分片技術(shù),將一個數(shù)據(jù)庫進行拆分,通過數(shù)據(jù)庫中間件連接,需要的朋友可以參考下
    2024-01-01
  • SpringAOP四種通知類型+環(huán)繞通知說明

    SpringAOP四種通知類型+環(huán)繞通知說明

    這篇文章主要介紹了SpringAOP四種通知類型+環(huán)繞通知說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Mybatis源碼解析之事務(wù)管理

    Mybatis源碼解析之事務(wù)管理

    大家好,本篇文章主要講的是Mybatis源碼解析之事務(wù)管理,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Java校驗validate介紹和使用實例

    Java校驗validate介紹和使用實例

    這篇文章主要介紹了Java校驗validate介紹和使用的相關(guān)資料,還介紹了如何使用@Valid和@Validated注解進行聲明式校驗,以及如何處理復(fù)雜校驗需求,通過自定義校驗注解來實現(xiàn),需要的朋友可以參考下
    2025-01-01
  • Java線程通信中關(guān)于生產(chǎn)者與消費者案例分析

    Java線程通信中關(guān)于生產(chǎn)者與消費者案例分析

    這篇文章主要介紹了Java線程通信中關(guān)于生產(chǎn)者與消費者案例,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 淺析Java的Hibernate框架中的緩存和延遲加載機制

    淺析Java的Hibernate框架中的緩存和延遲加載機制

    這篇文章主要介紹了Java的Hibernate框架中的緩存和延遲加載機制,Hibernate是注明的Java下SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-11-11
  • Java常用正則表達式(身份證號、郵箱、手機號)格式校驗代碼示例

    Java常用正則表達式(身份證號、郵箱、手機號)格式校驗代碼示例

    這篇文章主要介紹了Java常用正則表達式格式校驗的相關(guān)資料,講解了使用正則表達式校驗身份證號、郵箱和手機號,并允許輸入為空字符串,給出了詳細的代碼示例,需要的朋友可以參考下
    2025-04-04
  • Java模版引擎Freemarker

    Java模版引擎Freemarker

    FreeMarker是一個模板引擎,一個基于模板生成文本輸出的通用工具,使用純Java編寫 FreeMarker被設(shè)計用來生成HTML Web頁面,特別是基于MVC模式的應(yīng)用程序
    2016-04-04

最新評論

瑞金市| 桓仁| 乌海市| 南丰县| 乌兰察布市| 伊川县| 东山县| 桐梓县| 华蓥市| 古浪县| 丰县| 冕宁县| 镇安县| 容城县| 大田县| 额尔古纳市| 天水市| 金乡县| 贡嘎县| 紫云| 中卫市| 阳原县| 鲁甸县| 大化| 呼伦贝尔市| 民丰县| 得荣县| 灵台县| 卢氏县| 吴旗县| 阿拉善盟| 广州市| 宁武县| 赤城县| 蒲江县| 交口县| 桃园县| 灵宝市| 双鸭山市| 靖边县| 定陶县|