spring boot 显示数据库中图片

要在Spring Boot中显示数据库中的图片,你可以按照以下步骤进行操作:

1.在数据库中创建一个列用于存储图片的数据。通常使用BLOB类型存储图片的二进制数据。

2.创建一个Spring Boot项目,并添加相应的依赖,如Spring Data JPA。

3.创建一个实体类,包含一个字段用于存储图片的数据。在该字段上使用@Lob注解来表示该字段是一个大对象。

java 复制代码
@Entity
public class ImageEntity {
    @Id
    private Long id;
    
    @Lob
    private byte[] imageData;
    
    // getters and setters
}

4.创建一个JPA Repository,用于操作数据库中的图片数据。

java 复制代码
public interface ImageRepository extends JpaRepository<ImageEntity, Long> {
    // 添加自定义的方法,用于按照ID查询图片数据等操作
}

5.创建一个Controller来处理图片请求。

java 复制代码
@RestController
public class ImageController {
    @Autowired
    private ImageRepository imageRepository;
    
    @GetMapping("/image/{id}")
    public ResponseEntity<byte[]> getImage(@PathVariable Long id) {
        Optional<ImageEntity> imageOptional = imageRepository.findById(id);
        if (imageOptional.isPresent()) {
            byte[] imageData = imageOptional.get().getImageData();
            
            HttpHeaders headers = new HttpHeaders();
            headers.setContentType(MediaType.IMAGE_JPEG); // 根据实际情况设置图片类型
            
            return new ResponseEntity<>(imageData, headers, HttpStatus.OK);
        } else {
            return new ResponseEntity<>(HttpStatus.NOT_FOUND);
        }
    }
}

6.启动Spring Boot应用,访问http://localhost:8080/image/{id}来获取指定ID的图片。

相关推荐
流烟默8 分钟前
SpringBoot应用链路追踪 traceId 技术方案
spring boot·skywalking·traceid
济*沧*海24 分钟前
如何判断接口的返回值?
后端
杨充30 分钟前
5.多用组合和少继承
后端
杨充34 分钟前
4.接口而非实现编程
java·后端·架构
一缕清烟在人间1 小时前
HarmonyOS应用开发实战:萌宠日记 - 生命周期在萌宠日记中的实践
后端
Conan在掘金1 小时前
鸿蒙 ArkUI 组件深水区:Span 富文本嵌套,一行 Text 塞下「红蓝斜下大」五样式 + 动态高亮
后端
卷无止境1 小时前
Python 类型注解与运行时反射:从原理到工程实践
后端·python
耀耀_很无聊1 小时前
13_Spring Boot 3.5.8 + Redisson 3.45.1 导致 Sa-Token 登录 StackOverflowError
spring boot·后端·bootstrap
AskHarries2 小时前
邮件发送方案对比
后端
Ai拆代码的曹操2 小时前
@Async 注解失效的底层真相:this 调用绕过代理,接口响应翻倍
后端