본문 바로가기

JAVA

[base64] 이미지 파일을 base64로 DB 입/출력

 

// DB입력 시
MultipartFile mpf = request.getFile((String)itr.next()); // 멀티파트 파일 
String uuid_str = makeUUIDrandomId();  
//uuid_str = "4512286bed9d4e5f8bef9534b4cb4171";   // 기본 키값
StringBuilder sb = new StringBuilder();  // 이미지를 문자열로 
//sb.append("data:image/png;base64,"); // 직접적으로 src에 출력할때만 필요
sb.append(new String(Base64.encodeBase64(mpf.getBytes()),"UTF-8"));

// uuid_str : DB테이블 키값,    sb.toString() : 변환된 이미지 문자열 (CLOB저장)



// DB출력 시
response.setContentType("image/png;charset=utf-8"); // URL이 image라고 인식하도록 header에 저장
response.setHeader("Content-Disposition", "inline; fileName=image(기본파일명).png"); // 이미지 웹브라우저 저장 시 기본 파일명

IOUtils.copy(new ByteArrayInputStream(Base64.decodeBase64(result.getBytes())), response.getOutputStream()); // response의 output으로 반환

// 없을 경우 response.sendRedirect("/images/no-image.png"); 반환

'JAVA' 카테고리의 다른 글

[JAVA] 크로스사이트 Origin - response 처리  (0) 2020.03.09
[주소URL] request 에서 URL정보  (0) 2019.10.02
[java] Unescape Html 유니코드  (0) 2019.10.01
[Spring] ResponseBody 값 반환  (0) 2019.03.21
[Jsp] 한글 디코딩  (0) 2019.01.30