SpringBoot传blob图片给前端
时间: 2023-03-20 22:00:42 浏览: 166
基于SpringBoot的文件上传系统,前后端分离,单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传
5星 · 资源好评率100%
要将 Spring Boot 中的 Blob 图片传递给前端,可以遵循以下步骤:
1. 将 Blob 图像转换为字节数组(byte array)
使用 Java 中的 `Blob` 类获取 Blob 图像数据,然后使用 `Blob.getBytes()` 方法将其转换为字节数组。
示例代码:
```java
Blob blob = resultSet.getBlob("image_blob");
byte[] imageBytes = blob.getBytes(1, (int) blob.length());
```
2. 将字节数组编码为 Base64 字符串
将字节数组转换为 Base64 编码的字符串,以便在 JSON 中传递。
示例代码:
```java
String base64EncodedImage = Base64.getEncoder().encodeToString(imageBytes);
```
3. 创建包含 Base64 字符串的 JSON 响应
将 Base64 编码的字符串添加到 JSON 对象中,并将其作为响应发送到前端。
示例代码:
```java
JSONObject response = new JSONObject();
response.put("image", base64EncodedImage);
return ResponseEntity.ok(response.toString());
```
在前端中,您可以使用 JavaScript 将 Base64 字符串转换回图像,并将其显示在 HTML 中。示例代码如下:
```javascript
const imageElement = document.createElement('img');
imageElement.src = 'data:image/png;base64,' + base64EncodedImage;
document.body.appendChild(imageElement);
```
阅读全文