最代码广告位
首页>分享>Spring MVC+Mybatis+Ehcache+Apache Shiro+Bootstrap整合开发java仓库管理系统源码>/WMS/src/main/java/com/ken/wms/common/controller/FileSourceHandler.java
package com.ken.wms.common.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

/**
 * 处理文件下载请求
 *
 * @author Ken
 */
@Controller
@RequestMapping("/commons/fileSource")
public class FileSourceHandler {

    @RequestMapping(value = "download/{fileName:.+}", method = RequestMethod.GET)
    public void fileDownload(@PathVariable("fileName") String fileName, HttpServletRequest request,
                             HttpServletResponse response) throws IOException {

        if (fileName == null)
            return;

        // 获取文件
        ServletContext context = request.getServletContext();
        String directory = context.getRealPath("/WEB-INF/download");
        Path file = Paths.get(directory, fileName);
        if (Files.exists(file)) {
            // 设置响应头
            response.addHeader("Content-Disposition", "attachment;filename=" + file.getFileName());
            Files.copy(file, response.getOutputStream());
            response.getOutputStream().flush();
        }
    }
}
最近下载更多
IT达人 LV207月3日
太阳月亮
lzqsky666 LV107月3日
月亮月亮星星星星
psccanda LV36月28日
星星星星星星
佳叶待你如初恋 LV46月27日
月亮
19851392451 LV86月25日
月亮月亮
heimanba LV176月20日
太阳星星
575979540 LV56月10日
月亮星星
a1453370401 LV36月8日
星星星星星星
xiaobingb LV46月6日
月亮
小小林1a LV96月3日
月亮月亮星星
最近浏览更多
Homeryaya7月3日
暂无贡献等级
IT达人 LV207月3日
太阳月亮
lzqsky666 LV107月3日
月亮月亮星星星星
王泽展7月3日
暂无贡献等级
hw272619 LV67月1日
月亮星星星星
豆子小兔子 LV36月30日
星星星星星星
187236 LV36月28日
星星星星星星
wangsirgblw LV16月28日
星星
psccanda LV36月28日
星星星星星星
佳叶待你如初恋 LV46月27日
月亮
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友