我做了一個Java函數,它將一個InputStream
作爲輸入。我有一個oracle.sql.BLOB
實例傳遞給該函數。我如何將它轉換爲InputStream
?Oracle數據庫BLOB到Java中的InputStream?
我需要使用BLOB參數重寫我的函數嗎?
我做了一個Java函數,它將一個InputStream
作爲輸入。我有一個oracle.sql.BLOB
實例傳遞給該函數。我如何將它轉換爲InputStream
?Oracle數據庫BLOB到Java中的InputStream?
我需要使用BLOB參數重寫我的函數嗎?
根據"Mapping Datatypes" documentation聲明類型爲oracle.sql.BLOB
的Java參數。然後,您撥打getBinaryStream()
對此BLOB
對象獲取您的InputStream
。
你真的沒有說怎麼你從數據庫中獲取數據,但你可以在Blob
使用ResultSet.getBinaryStream()
得到一個InputStream
,或致電getBlob()
獲得Blob
,然後getBinaryStream()
獲得流。
我們用PL/SQL修改它,所以在這裏沒什麼特別的,那裏有一個調用java函數並返回結果的PL/SQL函數 –
@ Data-Base:我的意思是你正在使用哪種客戶端技術 - 一個ORM等作爲Hibernate,直接JDBC,哪個驅動等 –
不知道你是什麼意思,但沒有!我們只是從PL/SQL中查詢數據庫並將該變量發送給函數,該函數將變量轉換爲數據並返回文本 Java被編譯爲Oracle數據庫中的類 –
然後呢?我如何將它轉換爲InputStream? –
@數據庫:我編輯了答案。 –
oracle.sql.BLOB給我一個錯誤! –