본문으로 바로가기

Spring MVC image 반환

category Back-End/Spring framework 2018. 9. 17. 22:04
반응형

1. HTML

1
2
3
4
<body>
    <img src="getImage"/>
</body>
 
cs


위 이미지 태그는 IP주소:PORT번호/CONTEXT/getImage 의 주소로 요청을 날린다.


2. Controller

1
2
3
4
5
6
7
@RequestMapping("/getImage")
@ResponseBody
    public ResponseEntity<byte[]> profileImage() throws IOException {
        HttpHeaders header = new HttpHeaders();
        header.setContentType(MediaType.IMAGE_JPEG);
        return new ResponseEntity<byte[]>(IOUtils.toByteArray(new FileInputStream(new File("이미지 경로"))), header, HttpStatus.CREATED);
    }
cs
 

이미지 태그의 요청을 받는 컨트롤러


new ResponseEntity<byte[]>(byte[], HttpHeaders, HttpStatus);


apache-common의 IOUtils의 toByteArray 메소드는 파일을 읽어 byte[] 배열로 반환


위와 같이 하면 IOUtils이 읽은 이미지 파일이 이미지태그 위치에 랜더링된다.


참고)

1
2
3
4
5
<dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.4</version>
</dependency>
cs




반응형