스프링 리스스 파일 읽고 다운로드 되는 코드를 작성해보자.
이미지 다운로드웹페이지에 이런경로로 파일 다운로드 요청을 한다.
컨트롤러는 아래와 같이 작성한다.
@RequestMapping("/file_resource")
public ResponseEntity<byte[]> file_resource(HttpServletRequest request,HttpServletResponse response, String fileName) throws Exception{
String saveFileName = fileName;
String f1 = "한글 파일명.hwp";
String dirName = "file";//리소스 경로
if(saveFileName.equals("team"))
{
fileName = f1;
}
String root_path = request.getSession().getServletContext().getRealPath("/");
HttpHeaders headers =new HttpHeaders();
InputStream in=null;
String filedownloadpath = dirName+File.separatorChar+fileName;
ClassPathResource resource = new ClassPathResource(filedownloadpath);
in =resource.getInputStream();
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
headers.add(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename*=UTF-8''" + URLEncoder.encode(fileName, "UTF-8"));
ResponseEntity<byte[]> entity=new ResponseEntity<byte[]>(IOUtils.toByteArray(in), headers, HttpStatus.CREATED);
in.close();
return entity;
}
ClassPathResource resource = new ClassPathResource(filedownloadpath);
in =resource.getInputStream();
리소스 경로에 있는 파일을 읽는다.
'SPRING FRAMEWORK' 카테고리의 다른 글
스프링 부트 자바 8버전 지원 POM.XML파일 (0) | 2024.04.24 |
---|---|
스프링 컨트롤러에서 자바 스크립트 추가 하기 (0) | 2023.02.20 |
CommonData LinkedHashMap (0) | 2022.12.15 |
spring mvc form post json submit 전 (0) | 2022.11.07 |
Spring mvc samesite cookie 결제 모듈 연동시 세션이 끊어지는 경우 (0) | 2022.09.16 |