Java -- JDBC mysql读写大数据,文本 和 二进制文件
来源:互联网 发布:华三交换机查看端口 编辑:程序博客网 时间:2024/06/05 15:37
1. 往mysql中读写字符文本
public class Demo1 {/* 创建数据库 create database LOBTest; use LOBTest; create table testclob ( id int primary key auto_increment, resume text ); */@Testpublic void add() {Connection conn = null;PreparedStatement st = null;ResultSet rs = null;try{conn = JdbcUtils.getConnection();String sql = "insert into testclob(resume) values(?)";st = conn.prepareStatement(sql);String path = Demo1.class.getClassLoader().getResource("db.properties").getPath();File file = new File(path);FileReader fr = new FileReader(file);st.setCharacterStream(1, fr, file.length());int num = st.executeUpdate();if(num > 0)System.out.println("插入成功!!");}catch (Exception e){e.printStackTrace();}finally {JdbcUtils.release(conn, st, rs);}}@Testpublic void read(){Connection conn = null;PreparedStatement st = null;ResultSet rs = null;try{conn = JdbcUtils.getConnection();String sql = "select resume from testclob where id = ?";st = conn.prepareStatement(sql);st.setInt(1, 2);rs = st.executeQuery();if(rs.next()){Reader reader = rs.getCharacterStream("resume");FileWriter fw = new FileWriter("write.txt");char[] buffer = new char[1024];int len = 0;while( (len=reader.read(buffer)) > 0){fw.write(buffer, 0, len);}fw.close();reader.close();}}catch (Exception e){e.printStackTrace();}finally {JdbcUtils.release(conn, st, rs);}}}
2. 往mysql中读写二进制文件
public class Demo2 {/* create table testblob ( id int primary key auto_increment, image blob ); */@Testpublic void add(){Connection conn = null;PreparedStatement st = null;ResultSet rs = null;try{conn = JdbcUtils.getConnection();String sql = "insert into testblob(image) values(?)";st = conn.prepareStatement(sql);String path = Demo1.class.getClassLoader().getResource("1.JPG").getPath();File file = new File(path);FileInputStream sf = new FileInputStream(file);st.setBinaryStream(1, sf, file.length());int num = st.executeUpdate();if(num > 0)System.out.println("插入成功!!");sf.close();}catch (Exception e){e.printStackTrace();}finally {JdbcUtils.release(conn, st, rs);}}@Testpublic void read(){Connection conn = null;PreparedStatement st = null;ResultSet rs = null;try{conn = JdbcUtils.getConnection();String sql = "select image from testblob where id = ?";st = conn.prepareStatement(sql);st.setInt(1, 1);rs = st.executeQuery();if(rs.next()){InputStream is = rs.getBinaryStream("image");byte[] buffer = new byte[1024];int len = 0;FileOutputStream fos = new FileOutputStream("1_back.JPG");while( (len=is.read(buffer))>0 ){fos.write(buffer, 0, len);}fos.close();is.close();}}catch (Exception e){e.printStackTrace();}finally {JdbcUtils.release(conn, st, rs);}}}
0 0
- Java -- JDBC mysql读写大数据,文本 和 二进制文件
- 【Java】JDBC向MYSQL读写大文本和二进制文件
- MySQL---数据库从入门走向大神系列(九)-用Java向数据库读写大文本/二进制文件数据
- 使用JDBC处理MySQL大文本和大数据
- JDBC学习之路(四)大文本和二进制文件的写入
- 使用JDBC处理大数据和大文本
- jdbc读写二进制文件
- jdbc读写二进制文件
- Java JDBC读取大文本类型数据(CLOB)
- mysql下大文本和二进制流的读写
- 使用JDBC处理大数据 读写文件
- jdbc访问大段文本数据
- JDBC处理大文本数据-Clob
- JDBC对大文本数据的存取
- JDBC处理大数据案例--处理文本
- 【转】文本文件,二进制文件,文本读写,二进制读写
- JDBC处理大数据(大文本的存储和读取)
- JDBC处理大数据(大文本的存储和读取)
- ICMP封包规则的对比: 针对是否响应ping来设计防火墙规则
- 黑马程序员:Java编程_网络编程
- make makefile 的使用
- 黑马程序员:Java编程_正则表达式
- 约瑟夫问题的极简单数学解法
- Java -- JDBC mysql读写大数据,文本 和 二进制文件
- Deep Learning 教程翻译
- C#中的Dictionary简介
- Android uevent
- String、StringBuffer和StringBuilder
- 微信公众平台开发入门教程(1)-百度云服务器和微信公众服务器注册申请
- [置顶]【cocos2d-x IOS游戏开发】2013年末开发及学习计划
- 国人当自强:两岸三地在线编程学习网站大搜罗
- Permutations