SpringBoot通过URL请求图片方法

通过URL请求图片方法

来源

如果你想通过controller动态返回图片,你可以参考以下示例代码¹²³:

```java
// 使用@PathVariable注解,获取请求路径中的参数
@GetMapping(value = "/image/{name}", produces = MediaType.IMAGE_JPEG_VALUE)
@ResponseBody
public byte[] getImage(@PathVariable("name") String name) throws IOException {
    File file = new File("D:/images/" + name + ".jpg");
    return IOUtils.toByteArray(new FileInputStream(file));
}

// 使用@RequestParam注解,获取请求参数中的值
@GetMapping(value = "/image", produces = MediaType.IMAGE_JPEG_VALUE)
@ResponseBody
public byte[] getImage(@RequestParam("name") String name) throws IOException {
    File file = new File("D:/images/" + name + ".jpg");
    return IOUtils.toByteArray(new FileInputStream(file));
}
```

源: 与必应的对话, 2023/3/21(1) SpringBoot如何优雅的使用@ResponseBody返回图片_可能是假 .... https://blog.csdn.net/u014449560/article/details/82807517 访问时间 2023/3/21.
(2) SpringBoot优雅的实现图片返回 - Sherlock先生 - 博客园. https://www.cnblogs.com/Baker-Street/p/12918295.html 访问时间 2023/3/21.
(3) springboot实战代码之如何优雅地返回图片_image_png_value和 .... https://blog.csdn.net/jimo_lonely/article/details/105305522 访问时间 2023/3/21.

我的实例代码

就是可以直接写一个controller来获取图片的请求,主要就是可以当作一个路径参数

@RequestMapping("/images")
@RestController
public class ImageController {
    /**
     * 实现直接从服务器目的文件夹拿取图片!!!  如果有需要的话就不用直接下载图片,直接通过URL请求获取图片,这个太强啦
     * @param name
     * @return
     * @throws IOException
     */
    @GetMapping(value = "/{name}", produces = MediaType.IMAGE_JPEG_VALUE)
    @ResponseBody
    public byte[] getImage(@PathVariable("name") String name) throws IOException {
        File file = new File("C:\\Users\\28374\\Desktop\\ProjectInZjut\\fwwbRace\\ProjectStart\\ProjecCode\\MedicalLiteratureSearchSystem\\nickImage\\" + name );
        return IOUtils.toByteArray(new FileInputStream(file));
    }
}

你可能感兴趣的:(spring,boot,后端,java)