java接收前端png 转为blob存入数据库中
时间: 2023-07-25 14:49:04 浏览: 100
你可以使用Java中的BufferedImage类来读取前端发送的PNG文件,然后将其转换为字节数组,最后使用Blob类型将其存入数据库中。
以下是一个示例代码:
```java
// 假设前端发送的PNG文件存在名为file的inputStream中
InputStream file = ...;
// 读取PNG文件并转换为字节数组
BufferedImage image = ImageIO.read(file);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "png", baos);
byte[] data = baos.toByteArray();
// 将字节数组存入数据库中
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
String sql = "INSERT INTO images (image_blob) VALUES (?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setBlob(1, new ByteArrayInputStream(data));
pstmt.executeUpdate();
```
在上面的示例中,我们首先使用ImageIO类将PNG文件读取为BufferedImage对象,然后使用ByteArrayOutputStream将其转换为字节数组。接下来,我们使用Blob类型将字节数组存入数据库中。注意,代码中的数据库连接和SQL语句需要根据实际情况修改。
阅读全文