`
yeruowei
  • 浏览: 25321 次
  • 性别: Icon_minigender_2
  • 来自: 西安
社区版块
存档分类
最新评论

Hibernate+JDBC操作Clob时发生ClassCastException

 
阅读更多

Hibernate+JDBC操作Clob时发生ClassCastException:$Proxy58

 

使用System.out.println(blob.getClass().getName())输出信息的时候,显示的是$Proxy58

 

从Hibernate源码可以看出,

<!-- Generated by javadoc (build 1.4.2_11) on Sun Oct 15 22:02:43 CDT 2006 -->

public class SerializableClob
extends Object
implements Serializable, Clob

由Hibernate返回的Clob对象实际上是代理类SerializableClobProxy的实例,提供了java.sql.Clob接口定义的方法(实际上是通过反射的方式),表现得像是个实现java.sql.Clob接口的对象(貌似),但实际上是个Proxy类型的实例,因此不能把这个实例转化成oracle.sql.CLOB类型。需先转化为SerializableClobProxy类型,再转化为Clob类型,即:

SerializableClobProxy proxy = (SerializableClobProxy )Proxy.getInvocationHandler(clob); 

oracle.sql.CLOB realClob = (CLOB) proxy.getWrappedClob();

分享到:
评论

相关推荐

    spring+hibernate操作oracle的clob字段

    Spring和Hibernate框架结合使用可以有效地进行CLOB字段的操作。以下是实现这一功能的关键步骤和注意事项: 1. **配置SessionFactory** 在Spring配置文件中,你需要创建一个`SessionFactory` bean,同时指定一个`...

    weblogic解决clob添加失败 classcastexception

    6. **使用JDBC API替代JPA/ORM**:如果使用了JPA或Hibernate等ORM框架,尝试使用原生的JDBC API进行CLOB操作,有时ORM的封装层可能会隐藏一些底层的类型转换问题。 通过以上步骤,一般可以定位并解决WebLogic中CLOB...

    hibernate存取oracle的clob

    hibernate存取oracle的clob

    jdbc 处理clob类型字段

    本主题主要探讨如何使用JDBC有效地操作Oracle数据库中的CLOB类型字段,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)等操作。 首先,我们需要理解CLOB的基本概念。CLOB是一种数据库对象,...

    JDBC方式操作CLOB字段实例

    JDBC方式操作CLOB字段实例代码 。

    spring+hibernate 解决大字段(clob)

    其中,`hibernate.jdbc.batch_size`设置为0表示禁用批处理,这对于处理CLOB字段尤为重要,因为批处理可能会导致CLOB数据被截断。 #### 三、Hibernate HBM文件配置 在Hibernate映射文件(HBM文件)中,也需要正确...

    Hibernate存储Clob字段的方式总结

    Hibernate存储Clob字段的方式总结涉及了在Java开发中使用Hibernate操作大型文本字段Clob的操作方法。本文主要介绍了两种操作Clob字段的方法,一种是将Clob字段直接映射为String类型,另一种是使用Clob类型进行处理。...

    hibernate保存blob,clob对象

    总结,Hibernate通过`@Lob`注解支持BLOB和CLOB的持久化,开发者需要适当地将数据转换为对应的对象类型,然后使用Hibernate的CRUD操作进行保存和检索。同时,要注意性能优化,如懒加载和数据库特定的最佳实践。

    jdbc读写Oracle的CLOB字段

    JDBC读写Oracle的CLOB字段

    spring+hbernate对clob、blob字段的处理

    一个完整的工程,主要功能为:spring+hbernate对clob、blob字段的处理 包括:数据脚本、典型的SSH框架处理,以及spring、hibernate数据批量保存等功能源码、所用到的lib包 数据环境为:oracle 10G 开发:Mycelipse5.1...

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

    总之,理解并熟练掌握Hibernate对Oracle中的Clob和Blob字段的操作,是Java开发人员在处理大数据时必不可少的技能,这有助于确保数据的正确存储和高效访问。通过阅读和分析提供的源码,我们可以更深入地理解其底层...

    关于在Hibernate中对于Clob,Blob字段的处理方法

    2. 配置Hibernate的JDBC连接,使用支持Clob和Blob高效操作的Oracle JDBC驱动。 3. 利用Hibernate提供的API进行增删改查操作,无需手动处理Clob和Blob的具体存储细节。 在实际开发中,了解并掌握这些知识点可以帮助...

    Hibernate对BLOB CLOB操作

    在Java的持久化框架Hibernate中,BLOB(Binary Large Object)和CLOB(Character Large ...在处理BLOB时,需要特别注意内存管理和文件I/O操作的效率,而对于CLOB,通常以字符串形式处理,避免不必要的转换和格式问题。

    weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB 类型转换解决办法

    这是因为 WebLogic 服务器为了更好地管理和操作数据库连接,会使用自己的包装类 `weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB` 来表示 CLOB 类型的数据,而不是直接使用 Oracle 提供的标准 `oracle.sql.CLOB` 类。...

    Hibernate对Blob,Clob的操作

    本文将详细介绍如何在Hibernate中操作Blob和Clob字段,实现数据的存储与读取。 首先,我们需要在Hibernate映射文件(.hbm.xml)中定义Blob和Clob字段。对于Blob,可以这样声明: ```xml ``` 这里的`name`属性...

    关于Oracle的 Clob数据类型在Hibernate中的应用小结

    在Hibernate框架中,Clob类型的字段处理是数据库操作中的一个关键环节,尤其是在处理大量文本数据时。以下是对Oracle Clob在Hibernate中应用的详细总结: 3.1 传统的JDBC方式: 在没有使用ORM框架之前,我们通常...

Global site tag (gtag.js) - Google Analytics