SpringMVC 下载文件,图片等

应用包为:
import javax.servlet.http.HttpServletRequest;
import  org.apache.commons.io.FileUtils;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;


下载功能方法

@RequestMapping (value= "/download" )
    public ResponseEntity< byte []> download(HttpServletRequest request ,
            Model model ) throws Exception {
       //下载文件路径
       String path = request .getServletContext().getRealPath( "/WEB-INF/resource/upload/" );
       System. out .println( "path:" + path );
       File file = new File( path + File. separator + "test.txt" );
       System. out .println( file .toString());
       HttpHeaders headers = new HttpHeaders(); 
       //下载显示的文件名,解决中文名称乱码问题 
       String downloadFielName = new String( "test.txt" .getBytes( "UTF-8" ), "iso-8859-1" );
       //通知浏览器以attachment(下载方式)打开图片
       headers .setContentDispositionFormData( "attachment" , downloadFielName );
       //application/ octet -stream : 二进制流数据(最常见的文件下载)。
       headers .setContentType(MediaType. APPLICATION_OCTET_STREAM );
       return new ResponseEntity< byte []>(FileUtils. readFileToByteArray ( file ),   
               headers , HttpStatus. CREATED ); 
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值