一,錯誤: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操作是否有開事務。正確配置好事務就不會有
問題了。
一般在存儲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操作是否有開事務。正確配置好事務就不會有
問題了。