1. 程式人生 > >java 用瀏覽器 到伺服器上下載指定檔案(含前後端)

java 用瀏覽器 到伺服器上下載指定檔案(含前後端)

其實這篇文章是上篇 pdf檔案生成 的後續,當時開發的時候就直接下載到桌面了,然後上環境發
現下載到了伺服器上,因此就趕緊搞了這個,網上的程式碼千篇一律,他們都是有後臺,但
是缺少前臺頁面的方法,我也是看了不少才補全,親測可用。

前端頁面

<td>                
    <button type="button" id="btn_query" class="btn btn-primary pull-right" 
        onclick="download('${credit.score_card_uuid}')">下載
    </button>
</td>
    var excel_param;
    excel_param = {
        'start_time'
: $("#start_time").val(), 'end_time' : $("#end_time").val(), 'order_uuids' : order_uuids }; function download() { postDownLoadFile({ url : '/ces/ces.do', data : excel_param, method : 'post' }); $('#excel_modal').modal('hide'
); } var postDownLoadFile = function(options) { var config = $.extend(true, { method : 'post' }, options); var $iframe = $('<iframe id="down-file-iframe" />'); var $form = $('<form target="down-file-iframe" method="' + config.method + '" />'
); $form.attr('action', config.url); for ( var key in config.data) { $form .append('<input type="hidden" name="' + key + '" value="' + config.data[key] + '" />'); } $iframe.append($form); $(document.body).append($iframe); $form[0].submit(); $iframe.remove(); }

在頁面 點選下載就會向後臺發起請求


public void exportExcel(InstalmentAuthOrderForm form) {
//請求引數 用form接受
//接受引數然後查詢資料,在伺服器生成pdf檔案

假設已經在伺服器生成了pdf

String filename="xxx授信額度2018年08月22日11時30分24秒.pdf"
String path="D:\\pdf\\";
//執行下列方法
download(path+filename,response,filename);
    public void download(String filePath, HttpServletResponse response, String fname) throws IOException {
        response.setCharacterEncoding("utf-8");
        response.setHeader("Pragma", "No-Cache");
        response.setHeader("Cache-Control", "No-Cache");
        response.setDateHeader("Expires", 0);
        response.setContentType("application/msexcel; charset=UTF-8");
        response.setHeader("Content-disposition","attachment; filename=" + URLEncoder.encode(fname, "UTF-8"));// 設定輸出檔案頭
        ServletOutputStream out = null;
        FileInputStream in = new FileInputStream(filePath); // 讀入檔案
        out = response.getOutputStream();
        out.flush();
        int aRead = 0;
        while ((aRead = in.read()) != -1 & in != null) {
            out.write(aRead);
        }
        out.flush();
        in.close();
        out.close();
        return;
    }
}

效果圖
這裡寫圖片描述

下載完 可以用java執行個指令碼 將伺服器上的 檔案刪了,

https://blog.csdn.net/xuxie13/article/details/76463956

相關推薦

java 瀏覽器伺服器下載指定檔案前後

其實這篇文章是上篇 pdf檔案生成 的後續,當時開發的時候就直接下載到桌面了,然後上環境發 現下載到了伺服器上,因此就趕緊搞了這個,網上的程式碼千篇一律,他們都是有後臺,但 是缺少前臺頁面的方法,我也是看了不少才補全,親測可用。 前端頁面 <td&g

python如何將Web伺服器指定檔案下載下來

本文轉自:http://blog.donews.com/limodou/archive/2005/02/16/278221.aspxQ:如何方便的計算兩個時間的差,如兩個時間相差幾天,幾小時等A:使用datetime模組可以很方便的解決這個問題,舉例如下:    >>> import dat

定時刪除一個月前web伺服器的垃圾檔案臨時檔案使用 java 1.7 Files 進行操作

  ​ import java.io.File; import java.io.IOException; import java.nio.file.DirectoryStream; import java.nio.file.FileVisitResult; import java.ni

java web 從伺服器下載圖片資料

package com.Action; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import

解決使用IE瀏覽器進行ajaxFileUpload後,瀏覽器會提示下載的問題踩坑記錄

最近做一個上傳功能,前端使用的是ajaxFileUpload,後臺程式碼不規範,response沒有設定contentType,除了chome之外,firefox和IE瀏覽器都會報錯,即能進入後臺服務正常進行業務邏輯,但是返回都落在error:function{ }裡。由於後

Spring Boot專案實現從系統目錄中下載指定檔案D盤下,測試檔案1.txt

@RequestMapping(value = "/downloadFileFromSysDir") public void downloadFileFromSysDir(HttpServlet

maven打包排除排除指定檔案war,jar

war包排除檔案 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>

Linux伺服器搭建測試環境war包+tomcat

> 悟空CRM專案環境部署(Java war專案) 1. 在/root目錄下建立一個資料夾(名字自取)。 ![](https://gitee.com/cai_hesheng/caituotuo-image/raw/master/img/20201215143731.png) 2. ls命令檢視一下

VMware下載及安裝破解碼永久使用

一、介紹        VMware(中文名威睿”,紐約證券交易所“程式碼:VMW)虛擬機器軟體,是全球桌面到資料中心虛擬化解決方案的領導廠商。全球不同規模的客戶依靠VMware來降低成本和運營費用、確保業務持續性、加強安全性並走向綠色。2008年,VMware年收入達到19

Java登入認證-基於userId+token-框架fpassportgithub原始碼

     前段時間,自己開發了一個網路API呼叫的框架"flylib-passport",可以用於大多數的網路介面呼叫(HTTP呼叫)裡的許可權認證--使用者登入。 驗證條件是userId+token合法,才能呼叫響應的介面成功。 否則,則返回錯誤程式碼(比如t

java 反射獲取類中所有的屬性父類

直接上程式碼 public static List<Field> getFieldList(Class<?> clazz){ if(null == clazz){

Java通過銀行卡號獲取卡屬銀行校驗

注:百度所得,更新了資料 public class GetBank { /** * @param args * @throws SQLException */ private final static int[] bankBin = {

【原創】那些年過的Redis集群架構面試解析

alived redis事務 空間 孤獨 不生效 strong 推出 tin 試用 引言 今天是2019年2月12號,也就是大年初八,我接到了高中同學劉有碼面試失利的消息。 他面試的時候,身份是某知名公司的小碼農一枚,卻因為不懂自己生產上Redis是如何部署的,導致面試失敗

linux伺服器下載的csv檔案在window環境下excel開啟的亂碼問題解決

【問題產生原因】 Excel預設並不是以UTF-8來開啟檔案,所以在csv開頭加入BOM,告訴Excel檔案使用utf-8的編碼方式。 【核心程式碼】 response.setContentType

記錄一下:傳到伺服器的pdf 檔案直接下載而非在瀏覽器裡開啟

原文地址:https://segmentfault.com/q/1010000000692593/a-1020000000692707 這邊自己記錄一下 點選 <a href="Test.pdf">下載</a> 的時候,Chrome 會自動呼叫內建

fillzilla 修改Liunx伺服器的配置檔案引起的java.lang.NoClassDefFoundError

今天做了一件很挫的事情,為了方便通過fillzilla修改了伺服器一個專案的配置檔案,修改之後,專案可以部署成功,但發起的任何請求都會報一個錯誤,java.lang.NoClassDefFoundError: Could not initialize class

Java實現FTP伺服器傳、下載下載多個寫入本地、刪除

場景:需要從FTP伺服器一個檔案目錄下down下來所有的檔案,上傳到專案某個目錄下。 上傳下載刪除獲取檔案下所有檔案,順便加上獲取到所有檔案進行下載。 package a1; /** * 1----public boolean uploadFile(String path ,Fi

瀏覽器訪問IIS伺服器面的plist檔案報錯 HTTP Error 404 3 - Not Found

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

下載hdfs指定檔案到本地

package com.yc.hadoop.hdfs; import java.net.URI; import java.util.Scanner; import org.apache.hadoop.conf.Configuration; import org.apache.

c#如何在FTP伺服器下載資料夾及子資料夾中的檔案

c#從FTP伺服器上下載資料夾及子資料夾中的檔案需要三個步驟。 1.單個檔案的下載 /*adss表示存放到本地的路徑名,ftpadss表示從FTP伺服器下載的路徑名*/ public void downLoad(string adss, string ftpadss)   &n