繁体中文
设为首页
加入收藏
当前位置:JSP技术首页 >> 数据库相关 >> 处理blob的完整例子

处理blob的完整例子

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:78  文字大小:【】【】【
简介:import oracle.jdbc.driver.OracleResultSet; import oracle.sql.BLOB; import java.sql.DriverManager; import java.sql.Connection; import java.sql.ResultSet; import java.io.*; import java.sql.Statemen...
关键字:例子 完整 处理 blob

import oracle.jdbc.driver.OracleResultSet;

import oracle.sql.BLOB;

import java.sql.DriverManager;

import java.sql.Connection;

import java.sql.ResultSet;

import java.io.*;

import java.sql.Statement;

public class testBlob {

public static void main(String args[]) {

try {

DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@java:1521:eteda", "system", "manager");

conn.setAutoCommit(false);

Statement stmt = conn.createStatement();

stmt.execute("insert into testblob values (empty_blob())");

ResultSet rset = stmt.executeQuery("SELECT tt FROM testblob FOR UPDATE");

BLOB blob = null;

while (rset.next()) {

blob = ((OracleResultSet) rset).getBLOB(1);

System.out.println(blob.length());

}

File binaryFile = new File("c:\\meilin.xml");

System.out.println("meilin.xml length = " + binaryFile.length());

FileInputStream instream = new FileInputStream(binaryFile);

OutputStream outstream = blob.getBinaryOutputStream();

int chunk = blob.getChunkSize();

System.out.println("chunk size = " + chunk);

byte[] buffer = new byte[chunk];

int length = -1;

while ((length = instream.read(buffer)) != -1)

outstream.write(buffer, 0, length);

instream.close();

outstream.close();

conn.commit();

} catch (Exception e) {

System.out.println(e.toString());

}

}

}

责任编辑:admin
相关文章