我想上傳多個對象到我的oracle數據庫使用java。如何通過java在oracle數據庫中上傳對象
我的對象包括{DOC,DOCX,PPT,PPTX,PDF}文件。
如何在Oracle數據庫中上傳我的對象並從數據庫中檢索它。
我也有興趣瞭解更多關於「我如何批量插入Java數據庫中的對象列表?」但我認爲這個問題以前回答過。如果您有任何新的或有趣的資源,請與我分享,請...
我想上傳多個對象到我的oracle數據庫使用java。如何通過java在oracle數據庫中上傳對象
我的對象包括{DOC,DOCX,PPT,PPTX,PDF}文件。
如何在Oracle數據庫中上傳我的對象並從數據庫中檢索它。
我也有興趣瞭解更多關於「我如何批量插入Java數據庫中的對象列表?」但我認爲這個問題以前回答過。如果您有任何新的或有趣的資源,請與我分享,請...
插入到數據庫:
int primaryKeyId = getNextPrimaryKeyId();
PreparedStatement stmt1 = conn.prepareStatement(" insert into docTable values (?, ?, empty_blob()) ");
stmt1.setInt(1, primaryKeyId);
stmt1.setString(2, getDocumentTitle());
stmt1.executeUpdate();
PreparedStatement stmt2 = conn.prepareStatement(" select doc from docTable where id = ? for update ");
stmt2.setInt(1, primaryKeyId);
stmt2.execute();
OracleResultSet rset = (OracleResultSet)stmt2.getResultSet();
if (rset.next()) {
BLOB document = rset.getBLOB("doc");
document.trim(0);
OutputStream os = document.getBinaryOutputStream();
os.write(getDocumentToBeWrittenToDb());
os.flush;
os.close;
}
閱讀來自DB:
PreparedStatement stmt = conn.prepareStatement(" select title, doc from docTable where id = ?");
stmt.setInt(1, primaryKeyId);
stmt.execute();
BLOB document;
OracleResultSet rset = (OracleResultSet)stmt.getResultSet();
if (rset.next())
{
ByteArrayOutputStream baos = null;
InputStream is = null;
try
{
BLOB document = rset.getBLOB("document");
String title = rset.getString("title");
is = document.getBinaryStream();
baos = new ByteArrayOutputStream();
byte[] data = new byte[2048];
int len;
while ((len = is.read(data)) != -1)
{
baos.write(data, 0, len);
}
} finally
{
if (null != baos) baos.close();
if (null != is) is.close();
}
return baos.toByteArray();
}
我沒有oracleResultSet,在那裏我可以找到這個包? – Amir
Oracle JDBC驅動程序:http://mvnrepository.com/artifact/ojdbc/ojdbc –
如果你是
您可以訪問文件系統作爲一個普通的網絡文件系統。這樣做是使用常規文件系統io將非結構化數據存儲在數據庫中的最簡單方法。 dbfs_client使用保險絲翻譯了這些調用。如果需要,您可以稍後創建與其他數據的關係。
羅納德。
我在Windows XP上運行:( – Amir
在這種情況下,你可能能夠使用smb重新安裝fs。您仍然需要將dbfs掛載到某個Linux應用程序/文件服務器上,並將其導出到您的Windows機器。 –
什麼樣的物體? –
您使用某種ORM,Oracle對象還是要在數據庫中保存實例? –
您是否想問,「_如何從Java批量插入Oracle數據庫中的對象列表?_」 – Nishant