티스토리 뷰

스프링 환경에서 자바 파일 다운로드 방법

스프링 환경에서 자바 업로드 방법은 이전 글에 소개했고

이번에는 다운로드 하는 메소드이다.

@RequestMapping("/common/fileDownLoad")

public void fileDownload(@RequestMapping String fileName, @RequestParam String filePath, HttpServleRequest request, HttpServletResponse response){
   

    ServletOutputStream out = null;

    String msg = null;

    InputStream is = null;
   

    try{

        String file="파일경로";

        String docName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");

        response.setHeader("Content-Disposition", "attachement;filename="+docName+";");
 
        is = new FileInputStream(file);

        FileCopyUtils.copy(is, response.getOutputStream());

        response.setHeader("Content-Type", "application/octet-stream; charset=UTF-8");

        response.setHeader("Content-Transfer-Encoding", "binary;");

        response.setHeader("Pragma", "no-cache;");

        response.setHeader("Expires", "-1");

        response.flushBuffer();

    }catch(Exception e){

        e.printStackTrace();

        try{

            out.println("<html><head>");

            //alert 찍기

            out.println("</html></head>");

        }catch(IOException e1){

            e.printStackTrace();

        }

    }finally{

        if(is!=null){try{is.close}catch(IOException e)e.printStackTrace()}

        if(out!=null){try{out.close}catch(IOException e)e.printStackTrace()}

    }

}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함