open:spring-이미지-보여주기-파일-다운로드

[Spring] 이미지 보여주기 & 파일 다운로드

이미지 보여주기

snippet.javascript
<img src="<c:url value='/web/file/attachImage.do?seq=${seq}&no=${no}'/>" width="550" />

img 태그를 삽입하고 이미지 데이터를 조회할 경로를 입력합니다.

snippet.java
@RequestMapping("/attachImage.do")
public void attachImage(RMap rmap, ModelMap model, HttpServletRequest request, HttpServletResponse response) throws IOException {		
	UMap umap = fileService.selectAttachFile(rmap, model);
	byte[] imageData = (byte[]) umap.get("file");
	response.setContentType("image/jpeg");
	response.getOutputStream().write(imageData);
}

DB 에서 데이터를 조회합니다. (byte array)
contentType 을 image/jpeg로 설정합니다.
response 를 통해 결과를 전송합니다.

파일 다운로드

snippet.javascript
window.location="/web/file/fileDownload.do?seq="+seq+"&no="+no;

다운로드할 파일을 요청하는 URL를 설정합니다.

snippet.java
@RequestMapping("/fileDownload.do")
public void fileDownload(RMap rmap, ModelMap model, HttpServletRequest request, HttpServletResponse response) throws IOException {		
	UMap umap = fileService.selectAttachFile(rmap, model);
	byte[] imageData = (byte[]) umap.get("file");
	String filename = (String) umap.get("attach_file_name");
	response.setContentType("application/octet-stream");
	response.setHeader("Content-Disposition", "attachment;filename=" + filename);
	response.getOutputStream().write(imageData);
}

DB 에서 데이터를 조회합니다. (byte array)
contentType 을 application/octet-stream로 설정합니다.
header 에 filename 을 설정합니다.
response 를 통해 결과를 전송합니다.

참고

  • open/spring-이미지-보여주기-파일-다운로드.txt
  • 마지막으로 수정됨: 2020/06/02 09:25
  • 저자 127.0.0.1