Hibernate怎么向Oracle里面存儲blob圖片文件呢?
照著視頻敲的,但是把mysql數據庫改成了Oracle,之前不加圖片都可以,
Students?s?=?new?Students(3,"張三","男",new?Date(),"廈門");
????????//先獲得照片文件
????????File?file?=?new?File("d:"+File.separator+"panda.jpg");
????????//獲得照片文件的輸入流
????????InputStream?input?=?new?FileInputStream(file);
????????//創建一個Blob對象
????????Blob?image?=?Hibernate.getLobCreator(session).createBlob(input,input.available());
????????//設置照片屬性
????????s.setPicture(image);
????????session.save(s);
2016-12-25
hibernate讀寫oracle中blob字段的時候要做特殊操作,因為Blob自身有一個cursor,你必須使用cursor對blob進行操作,因而你在寫入Blob之前,必須獲得cursor才能進行寫入,獲得Blob的cursor需要你先插入一個empty的blob,即首先要從數據庫中查出這blob字段 ,然后給他清空 ,再通過數據流方式寫入新的