濮阳杆衣贸易有限公司

主頁 > 知識庫 > 使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)方法

使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)方法

熱門標(biāo)簽:地圖標(biāo)注養(yǎng)老院 圖吧網(wǎng)站地圖標(biāo)注 開發(fā)外呼系統(tǒng) 山東crm外呼系統(tǒng)軟件 哈爾濱電話機器人銷售招聘 愛客外呼系統(tǒng)怎么樣 哪個400外呼系統(tǒng)好 百度地圖標(biāo)注途經(jīng)點 慧營銷crm外呼系統(tǒng)丹丹

在JDBC4.0推出后,它的從多的特性正在受到廣泛地關(guān)注。下面通過本文給大家介紹JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)的方法。

需要的jar包

使用ojdbc6.jar

在/META-INF/MANIFEST.MF里可以看到Specification-Version: 4.0

建表

create sequence seq_blobmodel_id start with 1 increment by 1 nocache;
create table blobmodel
(
blobid number(10) primary key not null,
image blob
); 

將文件寫入數(shù)據(jù)庫

/**
* 將圖片文件存入數(shù)據(jù)庫
* @throws SQLException
* @throws IOException
*/
public int writeBlob(String path) throws SQLException, IOException{
int result = 0;
String sql = "insert into blobmodel(blobid,image) values(seq_blobmodel_id.nextval,?)";
//1.創(chuàng)建Blob
Blob image = DBHelper.getConnection().createBlob();
//2.將流放入blob
OutputStream out = image.setBinaryStream(1);
//3.讀取圖片,并寫入輸出流
FileInputStream fis = new FileInputStream(path);
byte []buf = new byte[1024];
int len = 0;
while((len=fis.read(buf))!=-1){
out.write(buf, 0, len);
}
result = DBHelper.executeUpdate2(sql, new Object[]{image});//自己簡單封裝了jdbc操作
fis.close();
out.close();
return result;
}

將文件從數(shù)據(jù)庫中讀出

/**
* 將數(shù)據(jù)庫中的圖片文件讀出來
* @throws SQLException 
* @throws IOException 
*/
public void readBlob() throws SQLException, IOException{
String sql = "select image from blobmodel where blobid=?";
DBHelper.getConnection();//
ResultSet rs = DBHelper.executeQuery(sql, new Object[]{1});
while(rs.next()){
Blob image = rs.getBlob(1);
InputStream is = image.getBinaryStream();
BufferedInputStream bis = new BufferedInputStream(is);
String path = "img/"+new Date().getTime()+".jpg";//指定輸出的目錄為項目下的img文件夾
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(path));
byte []buf = new byte[1024];
int len = 0;
while((len=bis.read(buf))!=-1){
bos.write(buf,0,len);
}
bos.close();
bis.close();
}
}

以上所述是小編給大家介紹的使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • Java與Oracle實現(xiàn)事務(wù)(JDBC事務(wù))實例詳解
  • Java使用JDBC或MyBatis框架向Oracle中插入XMLType數(shù)據(jù)
  • Java開發(fā)Oracle數(shù)據(jù)庫連接JDBC Thin Driver 的三種方法
  • java基于JDBC連接Oracle 11g Release2實例分析
  • Java使用JDBC連接Oracle_MSSQL實例代碼
  • java使用jdbc鏈接Oracle示例類分享
  • JDBC連接Oracle數(shù)據(jù)庫常見問題及解決方法
  • 解析jdbc處理oracle的clob字段的詳解
  • 如何在Eclipse中設(shè)置Oracle的JDBC
  • 通過JDBC連接oracle數(shù)據(jù)庫的十大技巧
  • Java使用JDBC實現(xiàn)Oracle用戶認(rèn)證的方法詳解

標(biāo)簽:和田 開封 甘肅 周口 固原 武漢 青島 承德

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)方法》,本文關(guān)鍵詞  使用,JDBC4.0,操作,Oracle,中,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用JDBC4.0操作Oracle中BLOB類型的數(shù)據(jù)方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    古丈县| 灵山县| 凌海市| 胶州市| 阳春市| 临武县| 筠连县| 太康县| 罗源县| 河东区| 增城市| 民和| 兰西县| 巴南区| 襄汾县| 陆川县| 岐山县| 深泽县| 江城| 辽源市| 枞阳县| 永泰县| 鹤壁市| 黄冈市| 临清市| 永德县| 金堂县| 万年县| 文水县| 九寨沟县| 祁东县| 廊坊市| 濮阳市| 鄂伦春自治旗| 桂阳县| 英吉沙县| 五常市| 汝南县| 莒南县| 博罗县| 临高县|