SpringBoot使用@ResponseBody返回图片的实现

作者:二十同学 时间:2023-11-28 04:41:24 

以前使用HttpServletResponse可以通过输出流的方式来向前台输出图片。现在大部分都是使用springboot,在使用springboot之后,我们应该如何来修改代码呢?

Spring Boot项目搭建配置略过,可直接从官网简历一个demo

首先写一个Controller类,包括一个方法,如下:


package com.example.demo.common;

import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import java.io.File;
import java.io.FileInputStream;

@RestController
@RequestMapping(value="/api/v1")
public class ImageTest {

@GetMapping(value = "/image",produces = MediaType.IMAGE_JPEG_VALUE)
 @ResponseBody
 public byte[] test() throws Exception {

File file = new File("E:\\ce\\1.jpg");
   FileInputStream inputStream = new FileInputStream(file);
   byte[] bytes = new byte[inputStream.available()];
   inputStream.read(bytes, 0, inputStream.available());
   return bytes;

}

}

我们首先在@GetMapping上加入produces告诉Spring,我们要返回的MediaType是一个图片(image/jpeg),然后加上@ResponseBody注解,方法返回byte[],然后将图片读进byte[],不加produces会报错

浏览器访问接口测试一下,返回如下:

SpringBoot使用@ResponseBody返回图片的实现

来源:https://blog.csdn.net/qq_18298439/article/details/89315478

标签:SpringBoot,@ResponseBody,返回图片
0
投稿

猜你喜欢

  • java8 stream的多字段排序实现(踩坑)

    2023-10-22 11:06:31
  • 完美解决Android客户端RSA解密部分乱码的问题

    2022-08-14 23:17:10
  • 模拟打印机排队打印效果

    2023-12-13 13:26:22
  • Unity3d 使用Gizmos画一个圆圈

    2022-05-22 05:10:52
  • Android 3D旋转动画效果实现分解

    2022-11-14 17:53:00
  • Android ActionBar完全解析使用官方推荐的最佳导航栏(下)

    2022-04-27 02:35:03
  • C#并行编程Task类用法介绍

    2021-06-26 20:58:17
  • 基于android中权限的集合汇总

    2023-04-06 09:32:35
  • java 发送http和https请求的实例

    2023-11-29 12:46:52
  • 解决SpringMVC项目连接RabbitMQ出错的问题

    2022-12-22 13:05:51
  • 详解C#之事件

    2022-01-07 22:18:14
  • SpringBoot中的响应式web应用详解

    2022-05-01 05:47:49
  • Android 实现自己的LOG信息

    2023-06-08 16:30:30
  • spring MVC实现简单登录功能

    2023-11-13 05:20:48
  • 详解Spring Boot Admin监控服务上下线邮件通知

    2023-06-16 21:53:31
  • java15新功能的详细讲解

    2023-08-23 04:40:21
  • SpringBoot统一响应格式及统一异常处理

    2022-08-30 08:03:08
  • 解析Java设计模式编程中命令模式的使用

    2023-11-12 04:49:45
  • Android获取设备CPU核数、时钟频率以及内存大小的方法

    2022-09-13 07:09:32
  • 因Spring AOP导致@Autowired依赖注入失败的解决方法

    2022-10-24 19:44:11
  • asp之家 软件编程 m.aspxhome.com