zoukankan      html  css  js  c++  java
  • JDBC学习笔记(三)大文本数据的读写

    一、用JDBC向数据库插入大文本数据

    String sql = "insert into my_clob values (null, ?)";
    ps = conn.prepareStatement(sql);
    File f = new File("D:\BaiduNetdiskDownload\mysql\jdbc.sql");
    Reader reader = new BufferedReader(new FileReader(f));
    ps.setCharacterStream(1, reader , f.length());
    int res = ps.executeUpdate();
    System.out.println(res);
    reader.close();


    二、从数据库读取大文本数据写入到文件中

    方式一:直接把数据保存到字符串中

    String big_text = rs.getString("bit_text");
    File f = new File("D:\BaiduNetdiskDownload\mysql\jdbc.bak.sql");
    Writer wt = new FileWriter(f);
    wt.write(big_text);
    wt.close();

    方式二:通过ResultSet对象rs获取输入流读取数据,创建输出流写到文件

    Reader rd = rs.getCharacterStream("bit_text");
    File f = new File("D:\BaiduNetdiskDownload\mysql\jdbc.bak.sql");
    Writer wt = new FileWriter(f);
    char[] buff = new char[1024];
    int i = 0;
    while ((i = rd.read(buff)) != -1)
    {
      wt.write(buff,
    0, i);
    }
    wt.close();
    rd.close();

    方式三、通过Clob对象获取输入流

    cb = rs.getClob("bit_text");
    Reader rd = cb.getCharacterStream();
    File f = new File("D:\BaiduNetdiskDownload\mysql\jdbc.bak.sql");
    Writer wt
    = new FileWriter(f);
    char[] buff = new char[1024];
    int i = 0;
    while ((i = rd.read(buff)) != -1)
    {
      wt.write(buff,
    0, i);
    }
    wt.close();
    rd.close();
  • 相关阅读:
    常见浏览器的兼容问题
    SCSS 的理解
    常见浏览器兼容性问题与解决方案(上)
    常见浏览器兼容性问题与解决方案(下)
    ie6定位absolute bug触发layout解决
    AngularJS 最常用的八种功能
    IE6的3像素bug
    CSS属性级Hack
    什么是SASS
    什么是less?
  • 原文地址:https://www.cnblogs.com/pengyin/p/6407259.html
Copyright © 2011-2022 走看看