16 NİSAN 2011, CUMARTESİ
@Görüntü ResponseBody dönmek Nasıl?Spring MVC:
DB görüntü verileri (byte[]
) alıyorum. Nasıl @ResponseBody
Bu görüntü dönmek için ?
EDİT
@ResponseBody
yöntem HttpServletResponse
kullanarak parametre olmadan yaptım:
@RequestMapping("/photo1")
public void photo(HttpServletResponse response) throws IOException {
response.setContentType("image/jpeg");
InputStream in = servletContext.getResourceAsStream("/images/no_image.jpg");
IOUtils.copy(in, response.getOutputStream());
}
@Sid dediği gibi org.springframework.http.converter.ByteArrayHttpMessageConverter
kayıtlı dönüştürücü ile @ResponseBody
kullanarak benim için çalışmıyor :(.
@ResponseBody
@RequestMapping("/photo2")
public byte[] testphoto() throws IOException {
InputStream in = servletContext.getResourceAsStream("/images/no_image.jpg");
return IOUtils.toByteArray(in);
}
CEVAP
13 Aralık 2011, Salı
ByteArrayHttpMessageConverter
Bir kayıt ek olarak @ResponseBody
yerine ResponseEntity
bir kullanmak isteyebilirsiniz. Aşağıdaki kod benim için çalışıyor :
@RequestMapping("/photo2")
public ResponseEntity<byte[]> testphoto() throws IOException {
InputStream in = servletContext.getResourceAsStream("/images/no_image.jpg");
final HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.IMAGE_PNG);
return new ResponseEntity<byte[]>(IOUtils.toByteArray(in), headers, HttpStatus.CREATED);
}
Bunu Paylaş:
Nasıl Krom XML yerine JSON dönmek için...
Nasıl görüntü boyutu (yükseklik ve gen...
Nasıl Python ile birden fazla değer ge...
Nasıl benim app için Galeri içinden bi...
Nasıl bir Görüntü ölçek için İmageView...