1)创建BLOB使用Connection.createBlob
2)使用PreparedStatement.setBlob将BLOB写入DB
3)使用ResultSet.getBlob从DB读取BLOB
假设您的表t1具有BLOB列b1:
Connection conn = DriverManager.getConnection("jdbc:MysqL://localhost:3306/test","root","root");
Blob b1 = conn.createBlob();
b1.setBytes(1,new byte[10]); // first position is 1. Otherwise you get: Value of offset/position/start should be in the range [1,len] where len is length of Large Object[LOB]
PreparedStatement ps = conn.prepareStatement("update t1 set c1 = ?");
ps.setBlob(1,b1);
ps.executeUpdate();
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select c1 from t1");
Blob b2 = rs.getBlob(1);