博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
大二进制数据的存取
阅读量:6999 次
发布时间:2019-06-27

本文共 2397 字,大约阅读时间需要 7 分钟。

 

1 package cn.itcast.jdbc.lob; 2  3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileOutputStream; 6 import java.io.FileReader; 7 import java.io.FileWriter; 8 import java.io.InputStream; 9 import java.io.OutputStream;10 import java.io.Reader;11 import java.io.Writer;12 import java.sql.Connection;13 import java.sql.PreparedStatement;14 import java.sql.ResultSet;15 16 import org.junit.Test;17 18 import cn.itcast.util.JdbcUtil;19 20 //大二进制数据的存取21 /*22 use day15;23 create table t2(24     id int primary key,25     content longblob26 );27  */28 public class BlobDemo {29     @Test30     public void testAdd(){31         Connection conn = null;32         PreparedStatement stmt = null;33         try{34             conn = JdbcUtil.getConnection();35             stmt = conn.prepareStatement("insert into t2 (id,content) values (?,?)");36             stmt.setInt(1, 1);37             38             InputStream in = new FileInputStream("c:/1.jpg");39             stmt.setBinaryStream(2, in, in.available());40             41             int i = stmt.executeUpdate();42             if(i>0)43                 System.out.println("插入成功");44             45         }catch(Exception e){46             e.printStackTrace();47         }finally{48             JdbcUtil.release(null, stmt, conn);49         }50     }51     @Test52     public void testRead(){53         Connection conn = null;54         PreparedStatement stmt = null;55         ResultSet rs = null;56         try{57             conn = JdbcUtil.getConnection();58             stmt = conn.prepareStatement("select * from t2 where id=?");59             stmt.setInt(1, 1);60             //大数据要使用流的形式61             //保存到E盘上62             rs = stmt.executeQuery();63             if(rs.next()){64                 InputStream in = rs.getBinaryStream("content");65                 OutputStream out = new FileOutputStream("e:/1.jpg");66                 byte b[] = new byte[1024];67                 int len = -1;68                 while((len=in.read(b))!=-1){69                     out.write(b, 0, len);70                 }71                 out.close();72                 in.close();73             }74             75         }catch(Exception e){76             e.printStackTrace();77         }finally{78             JdbcUtil.release(null, stmt, conn);79         }80     }81 }

 

转载于:https://www.cnblogs.com/friends-wf/p/3747915.html

你可能感兴趣的文章
基于bluestore的rocksdb的调优,测试ceph-4K-randwrite性能
查看>>
NodeJs系列之package.json
查看>>
gorose orm+dotweb框架快速构建go web网站实战(五)
查看>>
使用DOM Breakpoints找到修改属性的Javascript代码
查看>>
创建一个离线优先,数据驱动的渐进式 Web 应用程序
查看>>
使用机器学习预测天气(第二部分)
查看>>
解决使用jwt刷新token带来的问题
查看>>
浅谈分布式存储系统Pangu2.0——它让双11运维变得智能起来
查看>>
通过Apache Flume向HDFS存储数据
查看>>
像盖房子一样写代码:当我以测试驱动开发的时候,我在想些什么
查看>>
html5使用Drag事件编辑器拖拽上传图片
查看>>
FPB 2.0:免费的计算机编程类中文书籍 2.0
查看>>
Ueditor上传本地音频MP3
查看>>
Egg.js开发七牛云备份项目总结
查看>>
npm下取消已发布的版本package
查看>>
Promise是Monad吗?
查看>>
(转)Mongoose学习参考文档
查看>>
将多个文件压缩成zip文件进行下载
查看>>
iOS项目集成react native就这几步
查看>>
H5实例教学--3D全景(ThreeJs全景Demo)
查看>>