mysql blob 数据存储和读取
2018-02-08 14:03
344 查看
存储前数据库信息
代码:import java.sql.Blob;import java.sql.Connection;import java.sql.PreparedStatement;import java.io.*;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;/*** blob测试* create by frank* on 2018/02/08*/public class BlobTest {private static final String JDBC_URL = "jdbc:mysql://localhost:3306/wechatapp?useSSL=false";private static final String USER = "root";private static final String PWD = "******";private static Connection connection = null;static {connection = getConn();}public static Connection getConn() {Connection connection = null;try {connection = (Connection) DriverManager.getConnection(JDBC_URL, USER, PWD);} catch (SQLException e) {e.printStackTrace();}System.out.println("connected");return connection;}public static int update() {int rst = 0;try {InputStream inputStream = new FileInputStream("E:\\demo.jpg");String sql = "update ps_blob set img = ? where id = ?";PreparedStatement preparedStatement = connection.prepareStatement(sql);preparedStatement.setBlob(1, inputStream);preparedStatement.setInt(2, 2);rst = preparedStatement.executeUpdate();} catch (Exception e) {e.printStackTrace();}return rst;}public static void get() {String sql = "select id,img from ps_blob where id = ?";InputStream inputStream = null;try {PreparedStatement preparedStatement = connection.prepareStatement(sql);preparedStatement.setInt(1, 2);ResultSet rst = preparedStatement.executeQuery();while (rst.next()) {System.out.println("id:" + rst.getInt(1));Blob blob = rst.getBlob(2);inputStream = blob.getBinaryStream();OutputStream outputStream =new FileOutputStream("E:\\demo1.jpg");int x = 0;byte[] a = new byte[1024];while ((x = inputStream.read(a)) != -1)outputStream.write(a);outputStream.close();inputStream.close();}} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) {System.out.println( BlobTest.update());BlobTest.get();}}运行完成后查看 E:\\demo.jpg1
数据库数据变化
只显示(BLOB)代表插入二进制流位 byte字节数为0
相关文章推荐
- 使用SQLite3存储和读取数据
- 存储过程1——读取数据
- SharedPreferences首页面存储登录名数据任意页面读取数据显示(存取数据)
- pickle存储数据-读取数据-入门---python学习笔记25
- HDFS的存储结构以及写入、读取hdfs数据操作流程简单总结
- java 数据与文本文件存储读取,文件大小计算。
- 读取外部存储的文件数据
- iOS开发24:使用SQLite3存储和读取数据
- C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件
- SQLite数据库如何存储和读取二进制数据
- spark中通过jdbc读取和存储数据
- 读取省市区文件,并对文件内的数据进行处理和存储
- 读取股票数据存储到本地MySQL数据库(三)
- ASP.NET MVC + EF 利用存储过程读取大数据,1亿数据测试很OK
- 数据存储-文件(文件的读取、把文件存储到SD卡中)
- ArrayList集合中的字符串数据存储到文本文件|文本文件中读取数据到集合
- 使用SQLite3存储和读取数据
- C# 向数据中存储和读取二进制文件!!
- Android SharedPreferences存储数据与读取
- 在VC下采用ADO实现BLOB(Binary)数据的存储,读取,修改,删除。