您的位置:首页 > 编程语言 > Java开发

javaweb简单通过springmvc实现文件下载

2018-03-13 08:32 369 查看
    临时接了一个小任务,要把开发的APK放到服务器端,通过扫描二维码下载安装。
研究了一下,把实现过程记录下来,以便以后查阅。
    首先需要导入一个包commons-io-2.4.jar  由Apache提供的Java函数库,很好用。

然后直接上springmvc的代码了:
@RequestMapping("/downloadApk")
public ResponseEntity<byte[]> DownloadAPK(HttpServletRequest req, HttpServletResponse resp) throws IOException {
//确定文字编码
req.setCharacterEncoding("utf-8");
//确定根目录
String path = "D:\\apache-tomcat-6.0.35\\webapps\\Spring_mvc\\xx.apk";
//文件名
String fileName = "xx.apk";
File file = null;
   HttpHeaders headers =null;
   file = new File(path);
   //请求头
   headers = new HttpHeaders();
   String fileName1 =new String(fileName.getBytes("UTF-8"),"iso-8859-1");//解决文件名乱码
 //通知浏览器以attachment(下载方式)打开图片
        headers.setContentDispositionFormData("attachment",fileName1);
        //application/octet-stream二进制流数据(最常见的文件下载)。
        headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);  
        return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.OK);

}
部分代码参考了网友们的分享代码。
在浏览器里可以通过超链接访问并下载。
而我又将下载链接生成了一个二维码,方便直接使用扫码下载。(生成二维码步骤就省略了)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: