springboot 图片显示
时间: 2023-11-15 12:56:50 浏览: 41
好的,针对您的问题,我可以给您提供以下两种方式来实现 Spring Boot 中图片的显示:
1. 将图片存储在本地,然后通过 URL 地址来访问图片。具体实现步骤如下:
- 在 Spring Boot 项目中创建一个文件夹用于存储图片,比如 "images"。
- 将图片上传到该文件夹中。
- 在 HTML 页面中使用 img 标签来引用图片,例如:
```html
<img src="/images/example.jpg" alt="example">
```
其中,"/images/example.jpg" 是图片的 URL 地址。
2. 将图片存储在数据库中,然后通过 Spring Boot 提供的接口来访问图片。具体实现步骤如下:
- 在数据库中创建一个表用于存储图片,包含字段 id、name、type 和 data。
- 在 Spring Boot 项目中创建一个实体类来映射该表。
- 在 Spring Boot 项目中创建一个控制器类,提供一个接口用于获取图片数据。具体代码如下:
```java
@RestController
@RequestMapping("/image")
public class ImageController {
@Autowired
private ImageRepository imageRepository;
@GetMapping("/{id}")
public ResponseEntity<byte[]> getImage(@PathVariable Long id) {
Optional<Image> image = imageRepository.findById(id);
if (image.isPresent()) {
byte[] data = image.get().getData();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.IMAGE_JPEG);
return new ResponseEntity<>(data, headers, HttpStatus.OK);
} else {
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
}
}
}
```
其中,ImageRepository 是用于访问数据库的接口,Image 是实体类,getImage 方法用于获取图片数据。