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的图片。

相关推荐
java1234_小锋30 分钟前
[免费]SpringBoot+Vue勤工助学管理系统【论文+源码+SQL脚本】
spring boot·后端·mybatis·勤工助学
踏浪无痕2 小时前
从 Guava ListenableFuture 学习生产级并发调用实践
后端·面试·架构
❀͜͡傀儡师2 小时前
SpringBoot 扫码登录全流程:UUID 生成、状态轮询、授权回调详解
java·spring boot·后端
可观测性用观测云2 小时前
观测云在企业应用性能故障分析场景中的最佳实践
后端
a努力。2 小时前
国家电网Java面试被问:Spring Boot Starter 制作原理
java·spring boot·面试
一 乐2 小时前
酒店预约|基于springboot + vue酒店预约系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
我是谁的程序员3 小时前
iOS CPU 占用率在性能问题中的表现形式
后端
一灰灰3 小时前
开发调试与生产分析的利器:MyBatis SQL日志合并插件,让复杂日志秒变可执行SQL
chrome·后端·mybatis
Code blocks3 小时前
SpringBoot从0-1集成Minio对象存储
java·spring boot·后端