亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring Boot+Nginx實現(xiàn)大文件下載功能

 更新時間:2024年05月23日 10:03:16   作者:珍朱(珠)奶茶  
相信很多小伙伴,在日常開放中都會遇到大文件下載的情況,大文件下載方式也有很多,比如非常流行的分片下載、斷點下載;當然也可以結(jié)合Nginx來實現(xiàn)大文件下載,在中小項目非常適合使用,這篇文章主要介紹了Spring Boot結(jié)合Nginx實現(xiàn)大文件下載,需要的朋友可以參考下

前言

相信很多小伙伴,在日常開放中都會遇到大文件下載的情況,大文件下載方式也有很多,比如非常流行的分片下載、斷點下載;當然也可以結(jié)合Nginx來實現(xiàn)大文件下載,在中小項目非常適合使用。

Nginx配置

在nginx配置中,配置內(nèi)部訪問路徑,使用 internal 來限制內(nèi)部,配置如下:

server {
    location /downloadFile {
        alias 文件所在目錄;
        internal;  # 僅限內(nèi)部調(diào)用
    }
}

Spring Boot下載

具體代碼如下:

    /**
     *
     * @param filePath  文件路徑
     * @param originalName  源文件名
     * @param response
     */
    @GetMapping("/downloadFile")
    public void downloadFile(String filePath, String originalName, HttpServletResponse response) {
        File file = new File("/upload/files/images/test/test.jpg");
        String[] split = filePath.split("\\/");
        String yyyyMMdd = split[2];
        log.info(file.getPath());
        try {
            String fileName = URLEncoder.encode(originalName, "UTF-8");
            response.addHeader("Content-Disposition", "attachment;filename=" + fileName);
            //設置URI給nginx進行內(nèi)部的跳轉(zhuǎn)/ngndownload
            response.setHeader("X-Accel-Redirect", "/downloadFile/" + yyyyMMdd + "/" + fileName );
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

到此這篇關于Spring Boot結(jié)合Nginx實現(xiàn)大文件下載的文章就介紹到這了,更多相關Spring Boot Nginx大文件下載內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 兩種實現(xiàn)Java類隔離加載的方法

    兩種實現(xiàn)Java類隔離加載的方法

    這篇文章主要介紹了兩種實現(xiàn)Java類隔離加載的方法,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下
    2021-02-02
  • mybatis中的延遲加載類型及設定詳解

    mybatis中的延遲加載類型及設定詳解

    這篇文章主要介紹了mybatis中的延遲加載類型及設定詳解,MyBatis中的延遲加載,也稱為懶加載,是指在進行關聯(lián)查詢時,按照設置延遲規(guī)則推遲對關聯(lián)對象的select查詢,延遲加載可以有效的減少數(shù)據(jù)庫壓力,需要的朋友可以參考下
    2023-10-10
  • java中駝峰與下劃線的寫法互轉(zhuǎn)

    java中駝峰與下劃線的寫法互轉(zhuǎn)

    這篇文章主要介紹了java中駝峰與下橫線的寫法互轉(zhuǎn)方法,文中先是進行了簡單的介紹,之后跟大家分享了一個自己編寫的工具類的示例代碼,有需要的朋友可以參考借鑒,下面來一起學習學習吧。
    2017-01-01
  • MyBatis分頁插件PageHelper的使用與原理

    MyBatis分頁插件PageHelper的使用與原理

    提到插件相信大家都知道,插件的存在主要是用來改變或者增強原有的功能,MyBatis中也一樣,下面這篇文章主要給大家介紹了關于Mybatis第三方PageHelper分頁插件的使用與原理,需要的朋友可以參考下
    2023-02-02
  • Java?注解@PostConstruct的原理及最佳使用場景分析

    Java?注解@PostConstruct的原理及最佳使用場景分析

    @PostConstruct?是?Java?中非常實用的注解,尤其是在?Spring?等框架中,它使得開發(fā)者可以方便地在?Bean?初始化后執(zhí)行額外的操作,本文給大家介紹@PostConstruct?的原理、使用場景及最佳實踐,感興趣的朋友一起看看吧
    2025-04-04
  • Maven在Windows中的配置以及IDE中的項目創(chuàng)建實例

    Maven在Windows中的配置以及IDE中的項目創(chuàng)建實例

    下面小編就為大家?guī)硪黄狹aven在Windows中的配置以及IDE中的項目創(chuàng)建實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Java反射技術(shù)詳解及實例解析

    Java反射技術(shù)詳解及實例解析

    這篇文章主要介紹了Java反射技術(shù)詳解及實例解析,反射可以說是Java中最強大的技術(shù)了,它可以做的事情太多太多,很多優(yōu)秀的開源框架都是通過反射完成的。如果對JAVA感興趣來可以學習一下
    2020-07-07
  • 使用SpringBoot創(chuàng)建一個RESTful API的詳細步驟

    使用SpringBoot創(chuàng)建一個RESTful API的詳細步驟

    使用 Java 的 Spring Boot 創(chuàng)建 RESTful API 可以滿足多種開發(fā)場景,它提供了快速開發(fā)、易于配置、可擴展、可維護的優(yōu)點,尤其適合現(xiàn)代軟件開發(fā)的需求,幫助你快速構(gòu)建出高性能的后端服務,需要的朋友可以參考下
    2025-01-01
  • java讀取json文件的2種方式例子

    java讀取json文件的2種方式例子

    這篇文章主要給大家介紹了關于java讀取json文件的2種方式,在開發(fā)過程中有時會遇到需要讀取.json文件的需求,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • SpringBoot DBUnit 單元測試(小結(jié))

    SpringBoot DBUnit 單元測試(小結(jié))

    這篇文章主要介紹了SpringBoot DBUnit 單元測試(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論