一,错误:java.lang.ClassCastException: oracle.sql.BLOB
一般在存储blob数据时首先要将java.sql.Blob类型转为oracle.sql.BLOB再进行写入操作,在强制转换时就会丢
java.lang.ClassCastException: oracle.sql.BLOB转型错误,形如:
SerializableBlob sb = (SerializableBlob) instance.getBlobData();
BLOB wrapblob = (BLOB) sb.getWrappedBlob();//此行丢出
主要原因少此行:session.refresh(instance, LockMode.UPGRADE);加锁查询出,这样instance中存放的Blob数据就
是oracle.sql.BLOB类型的。
二,错误:SQL Error: 1002, SQLState: 72000,ORA-01002: 提取违反顺序 出现这样的错误一定是事务没有控制好,用ssh
框架请检查调用此功能的method是否在事务控制中,直接用hibernate操作是否有开事务。正确配置好事务就不会有
问题了。