Clob content = almanacBean.getContributionContent();
almanacBean.setContenteStr(content.getSubString(1, (int)content.length()));
Action 层以String传过来
DAO:
public TbAlmanacContribution savaTbAlmanacContribution(final TbAlmanacContribution tbAlmanacContribution)
2. {
3. HibernateCallback callback = new HibernateCallback()
4. {
5. public Object doInHibernate(Session session) throws HibernateException, SQLException
6. {
7. String content=tbAlmanacContribution.getContenteStr();//获取传过来的string
8. TbAlmanacContribution temp = tbAlmanacContribution;
9. temp.setContributionContent(Hibernate.createClob(" "));//首先插入一个空的clob对象
10. session.saveOrUpdate(temp);//保存
11. session.flush();
12. session.refresh(temp, LockMode.UPGRADE);
13. try
14. {
15. SerializableClob sc= (SerializableClob)temp.getContributionContent();//序列化成clob
16. Clob wrapclob = sc.getWrappedClob();
17. if(wrapclob instanceof CLOB){
18. CLOB clob = (CLOB)wrapclob;
19.// clob = (oracle.sql.CLOB) temp.getContributionContent();
20.// clob.putString(1,content);
21. java.io.Writer writer = clob.getCharacterOutputStream();
22. writer.write(content);
23. writer.close();
24. }
25.
26.// session.saveOrUpdate(temp);
27.// tx.commit();
28.
29. } catch(Exception e)
30. {
31. e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
32. }
33. return temp;
34. }
35. };
36. return (TbAlmanacContribution) getHibernateTemplate().execute(callback);
37. }
读取
分享到:
相关推荐
在J2EE开发中,处理大数据对象(如大文本或二进制数据)时,Oracle数据库的CLOB...通过以上配置和操作,你可以在Spring和Hibernate的环境中顺利地对Oracle数据库的CLOB字段进行读写,满足J2EE应用中的大数据存储需求。
Hibernate存储Clob字段的方式总结涉及了在Java开发中使用Hibernate操作大型文本字段Clob的操作方法。本文主要介绍了两种操作Clob字段的方法,一种是将Clob字段直接映射为String类型,另一种是使用Clob类型进行处理。...
本文将详细介绍如何在Spring与Hibernate框架结合的情况下,有效地处理Oracle 10g数据库中的CLOB字段。 #### 一、环境配置 为了确保项目能够顺利运行,首先需要搭建好开发环境。本示例中使用的环境配置如下: 1. *...
### Hibernate 存取 Oracle 的 CLOB 在 Java 开发中,使用 Hibernate 框架进行数据库操作是非常常见的。其中,处理 Oracle 数据库中的 CLOB 类型数据是一项重要的技能。CLOB(Character Large Object)是一种用于...
在Hibernate中,如果Clob字段的值是字符串,可以通过将Clob字段映射为String类型,让Hibernate自动处理转换。这种方式简单易用,但可能不适合非常大的文本,因为可能会导致内存溢出。 3.3 直接使用Clob类型: 对于...
这篇博客文章“Hibernate操作Oracle中Clob、Blob字段小结”可能会探讨如何在Hibernate中有效地处理这两种类型的数据。 1. **Clob与Blob的理解**: - Clob:Clob是用于存储大量字符数据的类型,例如长篇文章、XML...
对于CLOB字段,可以使用`StringWriter`和`Reader`来处理文本内容: ```java StringWriter writer = new StringWriter(); writer.write("Your text content here..."); myEntity.setDescription(writer.toString());...
综上所述,使用Hibernate和JDBC读取Oracle数据库中的Blob数据涉及多个步骤,包括实体类的设计、数据库操作和文件流的处理。理解这些知识点对于处理大对象存储至关重要。在实际项目中,根据需求和性能考虑,选择合适...
本主题“hibernate动态映射表处理Oracle的CLOB类型”主要聚焦于如何在Hibernate中有效地管理和操作CLOB字段。在Oracle 10g中,CLOB数据类型的处理有时会遇到一些挑战,尤其是在与ORM框架结合使用时。以下将详细介绍...
本篇将详细介绍在Hibernate中如何处理Clob和Blob字段,以及使用特定Oracle JDBC驱动程序的优势。 首先,Hibernate通过`org.hibernate.type`包中的`ClobType`和`BlobType`来映射Clob和Blob。在实体类中,你需要定义...
首先,我们来看一下如何在数据库中创建包含BLOB和CLOB字段的表。例如,以下SQL语句创建了一个名为`users`的表,其中`uids`为主键,`img`为BLOB类型,`txt`为CLOB类型: ```sql CREATE TABLE users ( uids int ...
此外,对于频繁读取的CLOB字段,可以考虑将其索引或部分内容缓存。 最后,虽然Hibernate提供了便捷的接口,但在处理BLOB和CLOB时,还需要了解所用数据库的特性,因为不同的数据库可能有不同的限制和最佳实践。例如...
在Hibernate的XML映射文件中,你需要为这个Clob字段指定映射规则,例如: ```xml <property name="summaryClob" type="org.hibernate.type.ClobType"> <column name="SUMMARY_CLOB" /> ``` **CRUD操作**: ...
// 对应数据库中的CLOB字段 // getters and setters } ``` `@Lob`注解表明`content`字段是大字段类型,Hibernate会自动处理它的存储和读取。 **三、持久化操作** 1. **保存/更新大字段**:在保存或更新实体时...
一个完整的工程,主要功能为:spring+hbernate对clob、blob字段的处理 包括:数据脚本、典型的SSH框架处理,以及spring、hibernate数据批量保存等功能源码、所用到的lib包 数据环境为:oracle 10G 开发:Mycelipse5.1...
这个压缩包文件"spring1.2+hibernate3对大字段的处理实例"提供了一个具体的案例,演示了如何在Spring 1.2和Hibernate 3框架下解决这个问题。下面我们将深入探讨这些知识点。 首先,Spring 1.2是一个轻量级的Java...
Hibernate2支持将Java的`java.sql.Blob`和`java.sql.Clob`对象映射到数据库的Blob和Clob字段,这样可以存储大数据而不影响其他字段。 2. **文件系统存储**:大字段数据可以存储在文件系统中,然后在数据库中仅存储...
在Java的数据库操作中,`CLOB...总之,无论是使用JDBC还是Hibernate,处理`CLOB`和`BLOB`字段都需要特殊的处理方式,尤其是在Oracle等数据库中。了解这些处理方法对于开发涉及大数据量文本和二进制数据的应用至关重要。