无法从 SerialBlob 转换为 BLOB
Cannot Convert from SerialBlob to BLOB
我正在将文档转换为字节数组,然后将该字节数组转换为 Oracle BLOB 对象。但是当我转换时出现错误。
代码 -
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
PdfWriter.getInstance(document, byteArrayOutputStream);
byte[] pdfBytes = byteArrayOutputStream.toByteArray();
BLOB blob = new javax.sql.rowset.serial.SerialBlob(pdfBytes);
错误-
cannot convert from `SerialBlob` to BLOB
您在这里混合了 Oracle 和 Java 7 JDBC 类型。 BLOB
是 Oracle 发明的东西,它不太适合 JDBC 设计的其余部分,这就是为什么你不能同时使用两者的原因之一。
使用 java.sql.Blob
或仅使用 Oracle 的类型(即将 SerialBlob
替换为 oracle.sql.BLOB
加上必要的流)。
相关:
- Using Large Objects - Oracle JDBC 教程
- Why I cannot cast oracle BLOB from native java Blob
- Overcomplicated oracle jdbc BLOB handling
我正在将文档转换为字节数组,然后将该字节数组转换为 Oracle BLOB 对象。但是当我转换时出现错误。
代码 -
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
PdfWriter.getInstance(document, byteArrayOutputStream);
byte[] pdfBytes = byteArrayOutputStream.toByteArray();
BLOB blob = new javax.sql.rowset.serial.SerialBlob(pdfBytes);
错误-
cannot convert from `SerialBlob` to BLOB
您在这里混合了 Oracle 和 Java 7 JDBC 类型。 BLOB
是 Oracle 发明的东西,它不太适合 JDBC 设计的其余部分,这就是为什么你不能同时使用两者的原因之一。
使用 java.sql.Blob
或仅使用 Oracle 的类型(即将 SerialBlob
替换为 oracle.sql.BLOB
加上必要的流)。
相关:
- Using Large Objects - Oracle JDBC 教程
- Why I cannot cast oracle BLOB from native java Blob
- Overcomplicated oracle jdbc BLOB handling