eclipse mysql图片_Java利用Eclipse和Mysql数据库连接并存储图片——取出图片
时间: 2023-09-24 19:02:45 浏览: 96
首先,将图片存储到MySQL数据库中需要将图片转换为二进制流格式,并将其存储在BLOB类型的字段中。以下是一个示例代码片段,演示如何将图片存储到MySQL数据库中:
```java
// 读取图片
File file = new File("path/to/image.jpg");
FileInputStream input = new FileInputStream(file);
byte[] imageBytes = new byte[(int)file.length()];
input.read(imageBytes);
input.close();
// 建立数据库连接
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
// 存储图片
PreparedStatement statement = connection.prepareStatement("INSERT INTO images (name, image) VALUES (?, ?)");
statement.setString(1, file.getName());
statement.setBytes(2, imageBytes);
statement.executeUpdate();
statement.close();
connection.close();
```
接下来,演示如何从MySQL数据库中取出图片。
```java
// 建立数据库连接
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
// 从数据库中取出图片
PreparedStatement statement = connection.prepareStatement("SELECT image FROM images WHERE name = ?");
statement.setString(1, "image.jpg");
ResultSet resultSet = statement.executeQuery();
if (resultSet.next()) {
byte[] imageBytes = resultSet.getBytes(1);
// 将二进制流写入文件
FileOutputStream output = new FileOutputStream("path/to/output.jpg");
output.write(imageBytes);
output.close();
}
resultSet.close();
statement.close();
connection.close();
```
以上代码片段演示了如何从数据库中取出图片,并将其写入文件中。
阅读全文