Java知识点总结(JDBC-大文本对象的使用)

发布时间:2019-11-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Java知识点总结(JDBC-大文本对象的使用)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

Java知识点总结(JDBC-大文本对象的使用)

@(Java知识点总结)[Java, JDBC]

CLOB(Chaaracter Large Object

  • 用于存储大量的文本数据
  • 大字段有些特殊,不同数据库处理的方式不一样,大字段的操作常常是以流的方式来处理。而非一般的字段,一次即可读出数据。

MySQL中相关类型:

  • TINYTEXT最大长度为255(2^8-1)字符的TEXT列。
  • TEXT最大长度为65535(2^16-1)字符的TEXT列。
  • MEDIUMTEXT最大长度为16777215(2^24-1)字符的TEXT列。
  • LONGTEXT最大长度为4294967295或4GB(2^32-1)字符的TEXT列。
 import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.io.UnsupportedEncodingException; import java.SQL.Clob; import java.sql.Connection; import java.sql.PReparedstatement; import java.sql.ResultSet; import java.sql.SQLException; /**  * 测试CLOB 文本大对象的使用  * 将字符串和文本内容插入到数据库中的CLOB字段,讲CLOB字段取出来的操作  * @author Administrator  *  */ public class Demo02 {   //存   private static void insert(Connection conn){     String sql = "insert into users(NAME,INFO) values(?,?)";     PreparedStatement ps = null;     try {      ps = conn.prepareStatement(sql);      ps.setString(1, "黄晓明");      //将文本内容直接输入到数据库      //ps.setClob(2, new FileReader(new File("E:/b.txt")));      //讲程序中的字符串输入到数据库的CLOB字段中      ps.setClob(2, new BufferedReader(          new InputStreamReader(new ByteArrayInputStream("黄晓明是个明星".getBytes("utf-8")))));            ps.execute();          } catch (SQLException | UnsupportedEncodingException e) {      e.printStackTrace();     }finally{      DBUtil. close(ps);      DBUtil. close(conn);     }   }      //读   private static void read(Connection conn){     String sql = "select * From users where USERID = ?";     PreparedStatement ps = null;     ResultSet rs = null;     try {      ps = conn.prepareStatement(sql);      ps.setObject(1, 10); //setObject()可以代替setInt()、setString()等      rs = ps.executeQuery();      while(rs.next()){        Clob clob = rs.getClob("INFO");        Reader r= clob.getcharacterStream(); //通过字符流的方式读取        int temp = 0;        while((temp = r.read())!=-1){          System.out.print((char)temp);                  }      }     } catch (SQLException | IOException e) {      e.printStackTrace();     }finally{        DBUtil.close(rs);       DBUtil.close(ps);       DBUtil.close(conn);    }   }      public static void main(String[] args) {     insert(DBUtil.getConn());     read(DBUtil.getConn());   } }

脚本宝典总结

以上是脚本宝典为你收集整理的Java知识点总结(JDBC-大文本对象的使用)全部内容,希望文章能够帮你解决Java知识点总结(JDBC-大文本对象的使用)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。