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

javaweb 實現(xiàn)文件下載的方法及實例代碼

 更新時間:2016年11月21日 10:09:11   投稿:lqh  
這篇文章主要介紹了javaweb 實現(xiàn)文件下載的方法的相關資料,這里提供了實現(xiàn)代碼,需要的朋友可以參考下

javaweb 實現(xiàn)文件下載

不要再說用<a>標簽下載了,這個會把文件打開而不是下載

例如:

 <a href="E:\MyDesktop\37fecd65330184de67d419a8d02e7081.jpg">下載</a>

如果我這樣寫,瀏覽器就會把圖片直接打開,除非是一個瀏覽器打不開的文件

所以我們還是要用到java本身的文件讀寫來進行文件的下載

<a href="downloadFile?filename=<s:property value='document_filename'/>">下載</a>

package com.cpsec.tang.chemical.action;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.List;
import java.util.Random;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;
import org.springframework.stereotype.Controller;
import com.cpsec.tang.chemical.biz.DocumentBiz;
import com.cpsec.tang.chemical.entity.Document;
import com.cpsec.tang.chemical.util.Pager;
import com.opensymphony.xwork2.ActionSupport;

@Controller("documentAction")
public class DocumentAction extends ActionSupport{private String filename;
  public String downloadFile(){
    System.out.println(filename);
    try {
      HttpServletResponse response=ServletActionContext.getResponse();
      //設置文件MIME類型 
      response.setContentType(ServletActionContext.getServletContext().getMimeType(filename)); 
      //設置Content-Disposition 
      response.setHeader("Content-Disposition", "attachment;filename="+filename); 
      //獲取目標文件的絕對路徑 
      String fullFileName = ServletActionContext.getServletContext().getRealPath("/files/" + filename); 
      //System.out.println(fullFileName); 
      //讀取文件 
      InputStream in = new FileInputStream(fullFileName); 
      //讀取目標文件,通過response將目標文件寫到客戶端
      OutputStream out = response.getOutputStream(); 
      //寫文件 
      int b; 
      while((b=in.read())!= -1) 
      { 
        out.write(b); 
      } 
      in.close(); 
      out.close(); 
    } catch (Exception e) {
      e.printStackTrace();
    }
    return SUCCESS;
  }
  
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • 關于MyBatis Plus中使用or和and問題

    關于MyBatis Plus中使用or和and問題

    這篇文章主要介紹了關于MyBatis Plus中使用or和and問題,需要的朋友可以參考下
    2020-12-12
  • Java?Mybatis的初始化之Mapper.xml映射文件的詳解

    Java?Mybatis的初始化之Mapper.xml映射文件的詳解

    這篇文章主要介紹了Java?Mybatis的初始化之Mapper.xml映射文件的詳解,解析完全局配置文件后接下來就是解析Mapper文件了,它是通過XMLMapperBuilder來進行解析的
    2022-08-08
  • Java中Stream流中map和forEach的區(qū)別詳解

    Java中Stream流中map和forEach的區(qū)別詳解

    本文主要介紹了Java中Stream流中map和forEach的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • 詳解OAuth2 Token 一定要放在請求頭中嗎

    詳解OAuth2 Token 一定要放在請求頭中嗎

    這篇文章主要介紹了詳解OAuth2 Token 一定要放在請求頭中嗎,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • java開發(fā)RocketMQ之NameServer路由管理源碼分析

    java開發(fā)RocketMQ之NameServer路由管理源碼分析

    這篇文章主要為大家介紹了java開發(fā)中RocketMQ之NameServer路由管理源碼分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2021-11-11
  • 使用spring框架ResponseEntity實現(xiàn)文件下載

    使用spring框架ResponseEntity實現(xiàn)文件下載

    這篇文章主要介紹了使用spring框架ResponseEntity實現(xiàn)文件下載,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • java讀取wav文件(波形文件)并繪制波形圖的方法

    java讀取wav文件(波形文件)并繪制波形圖的方法

    這篇文章主要介紹了java讀取wav文件(波形文件)并繪制波形圖的方法,涉及java操作多媒體音頻文件轉(zhuǎn)換的相關技巧,需要的朋友可以參考下
    2015-06-06
  • java 文件和byte互轉(zhuǎn)的實例

    java 文件和byte互轉(zhuǎn)的實例

    下面小編就為大家分享一篇java 文件和byte互轉(zhuǎn)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-11-11
  • Open-Feign整合hystrix降級熔斷實戰(zhàn)記錄

    Open-Feign整合hystrix降級熔斷實戰(zhàn)記錄

    這篇文章主要介紹了Open-Feign整合hystrix降級熔斷實戰(zhàn)記錄,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 關于Spring中的三級緩存解析

    關于Spring中的三級緩存解析

    這篇文章主要介紹了關于Spring中的三級緩存,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評論

水富县| 本溪市| 分宜县| 焉耆| 惠州市| 东源县| 繁昌县| 宜阳县| 肇东市| 怀化市| 黄山市| 搜索| 扎囊县| 韶关市| 承德县| 齐齐哈尔市| 定陶县| 津南区| 江都市| 防城港市| 中阳县| 丽水市| 天津市| 宜丰县| 佛坪县| 石林| 邯郸市| 连山| 蒲城县| 偃师市| 天津市| 芷江| 泸水县| 巩留县| 吴江市| 平湖市| 黄骅市| 潮安县| 长泰县| 陵水| 松潘县|