`
fengzl
  • 浏览: 214303 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

blob、clob字段小结(二)

阅读更多
我发现对于Oracle 数据库,如果数据量较少直接插入数据到blob和clob字段也能成功,但是数据量一大就不行了,但大到什么程度就不一定了,所以一般在项目中应用还是得老老实实的按照上面的步骤进行,不过应用上面这个特性能够使我们在hibernate中顺利的操作Oralce的这种类型字段。

 PersonModel person = new PersonModel();
 person.setName("林意炜");
 person.setEmail("sailing8036@yahoo.com.cn");

 // 插入一个小数据数据
 person.setImage(Hibernate.createBlob(new byte[1]));
 person.setArticle(Hibernate.createClob(" "));

 session.save(person);
 session.flush();

 // 锁定该记录
 session.refresh(person, LockMode.UPGRADE);

 // 插入图片数据
 oracle.sql.BLOB blob = (oracle.sql.BLOB)person.getImage();
 OutputStream out = blob.getBinaryOutputStream();
 out.write(getData("D:/image1.jpg"));
 out.close();

  // 插入文章数据
  oracle.sql.CLOB clob = (oracle.sql.CLOB)person.getArticle();
  Writer writer = clob.getCharacterOutputStream();
  String article = new String(getData("D:/data.txt"));
  writer.write(article);
  writer.close(); 


注意不要太“抠”性能,将插入的小数据(一个字节和一个空格)自以为是的改为空(0个字节和空串),这样会导致再选择出来进行更新时对象的属性为null无法方便的强制转换成oracle.sql.BLOB和oracle.sql.CLOB进行下一步操作。
分享到:
评论

相关推荐

    Hibernate操作Oarcle中Clob、Blob字段小结

    NULL 博文链接:https://sjsky.iteye.com/blog/1154916

    Oracle 插入超4000字节的CLOB字段的处理方法

    在通过拼组sql语句来实现... 下面就此问题的解决办法,做一下小结: 我们可以通过创建单独的OracleCommand来进行指定的插入,即可获得成功,这里仅介绍插入clob类型的数据,blob与此类似,这里就不介绍了,下面介绍两

    关于Clob类型在Hibernate中 的应用小结.rar

    通常,要解决超过4000字节的数据,一种做法是将数据写入文件,xml或plain file都可以,数据...另一个做法是使用clob, blob等字段类型,主要有:采用传统的jbdc方式、把clob以string方式处理、直接使用clob类型三种方案

    MySQL 建表的优化策略 小结

    BLOB和CLOB 5 6. 特殊 5 6.1. 表格分割 5 6.2. 使用非事务表类型 5 1. 字符集的选择 如果确认全部是中文,不会使用多语言以及中文无法表示的字符,那么GBK是首选。 采用UTF-8编码会占用3个字节,而GBK只需要2个字节...

    Java数据库编程宝典2

    1.6 小结 第2章 设计数据库 2.1 数据库设计应考虑的事项 2.1.1 项目规范 2.1.2 设计表 2.1.3 生成发票 2.2 引用完整性 2.2.1 通用完整性规则 2.2.2 特定于数据库的完整性规则 2.3 小结 第3章 SQL基础 ...

    Java数据库编程宝典4

    1.6 小结 第2章 设计数据库 2.1 数据库设计应考虑的事项 2.1.1 项目规范 2.1.2 设计表 2.1.3 生成发票 2.2 引用完整性 2.2.1 通用完整性规则 2.2.2 特定于数据库的完整性规则 2.3 小结 第3章 SQL基础 ...

    Java数据库编程宝典1

    1.6 小结 第2章 设计数据库 2.1 数据库设计应考虑的事项 2.1.1 项目规范 2.1.2 设计表 2.1.3 生成发票 2.2 引用完整性 2.2.1 通用完整性规则 2.2.2 特定于数据库的完整性规则 2.3 小结 第3章 SQL基础 ...

    Java数据库编程宝典3

    1.6 小结 第2章 设计数据库 2.1 数据库设计应考虑的事项 2.1.1 项目规范 2.1.2 设计表 2.1.3 生成发票 2.2 引用完整性 2.2.1 通用完整性规则 2.2.2 特定于数据库的完整性规则 2.3 小结 第3章 SQL基础 ...

    Spring中文帮助文档

    14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...

    Spring API

    14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...

Global site tag (gtag.js) - Google Analytics