首页 > 代码库 > MySql中Blob二进制对象的处理
MySql中Blob二进制对象的处理
BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器。
可以用于存储图片等信息
Demo1:存储图片
1 String sql="INSERT INTO TestBlob(NAME,headImagfe) VALUES (?,?)";
conn=JdbcUtil.getConnection(); 2 pstmt=conn.prepareStatement(sql); 3 pstmt.setString(1,"mm"); 4 5 //mysql实现了所有方法,但有些方法执行无法通过,没有真正的实现 6 //pstmt.setBlob(parameterIndex, inputStream, length) 7 8 InputStream is=new FileInputStream("D:\\a.jpg");//输入流 9 10 pstmt.setBinaryStream(2, is, is.available());//加入到sql语句中11 12 pstmt.executeUpdate();//执行
Demo2:获取图片
1 String sql="select * from TestBlob where id=1"; 2 Blob blob= rs.getBlob("headImagfe"); 3 InputStream is=blob.getBinaryStream();//输入流 4 String path="D:\\b.jpg"; 5 OutputStream out=new FileOutputStream(path);//输出流 6 int len=-1; 7 byte[] buffer=new byte[1024]; 8 while ((len=(is.read(buffer)))>0) {//循环输出 9 out.write(buffer,0,len); 10 }11 out.close();12 is.close();
MySql中Blob二进制对象的处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。