繁体   English   中英

如何使用 Spring Boot 返回图像

[英]How do I return an image using Spring boot

我是 Spring Boot 的新手。 我正在使用 Spring boot 设计一个系统,它是一个 Restful API。 我想显示用户上传的图片。 我将文件存储在资源内的子文件夹“fotos/x”中。 我本能地尝试通过键入来访问它

  http://localhost:8080/fotos/76/miniaturas/casa-venda-2-dormitorios-franca-sao-paulo_1.jpg

希望 Tomcat 会为我提供图像,但事实并非如此。

所以我继续尝试构建一个端点,我遇到了一个片段

       @GetMapping(value = "/image")
public @ResponseBody byte[] getImage() throws IOException {

    InputStream in = null;
    try{
    in = getClass()
      .getResourceAsStream("/fotos/76/miniaturas/casa-venda-2-dormitorios-franca-sao-paulo_1.jpg");
    }catch(Exception ex){

        System.out.println(ex.getMessage());
    }
    return IOUtils.toByteArray(in);  //toByteArray doesn't exist.
}


}

我找到了一些对我有帮助的代码。

@GetMapping(value = "/imagens/{dir}/{img}", produces = MediaType.IMAGE_JPEG_VALUE)
public @ResponseBody byte[] getImage(@PathVariable String dir, @PathVariable String img) throws IOException {


     byte[] bytes = Files.readAllBytes(Paths.get("/var/www/back_imoveis/back_imoveis/imoveis/src/main/resources/public/fotos/" + dir + "/miniaturas/" + img));

     return bytes;


}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM