package com.jy;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Date;
import java.util.Properties;
import java.io.*;
import java.net.URL;
import java.sql.*;
import oracle.jdbc.driver.OracleResultSet;
import oracle.sql.CLOB;
import oracle.sql.BLOB;
public class ClobTest {
public static void main(String[] args) {
String dbDriver = "oracle.jdbc.driver.OracleDriver";
String urlStr = "jdbc:oracle:thin:@192.168.0.1:1521:ora10";
String userid = "test";
String pwd = "test";
try {
Class.forName(dbDriver);
Connection conn = DriverManager.getConnection(urlStr, userid, pwd);
// 写clob
conn.setAutoCommit(false);
Statement pstmt = conn.createStatement();
ResultSet rs3 = null;
// 插入id
String idtmp = String.valueOf(new Date().getTime());
long start = System.currentTimeMillis();
String sql = "insert into LOB_TEST (id,BLOB) values ('" + idtmp
+ "',empty_blob())";
pstmt.executeUpdate(sql);
conn.commit();
sql = "select BLOB from LOB_TEST where id = '" + idtmp
+ "' for update";
rs3 = pstmt.executeQuery(sql);
if (rs3.next()) {
Blob blob = rs3.getBlob(1);
OutputStream ut = ((oracle.sql.BLOB) blob)
.getBinaryOutputStream();
byte[] b = new byte[((oracle.sql.BLOB) blob).getBufferSize()];
File file = new File("D:/old.dmp");
InputStream fin = new FileInputStream(file);
int len = 0;
while ((len = fin.read(b)) != -1)
out.write(b, 0, len);
fin.close();
out.close();
}
System.out.println(" 所用时间:" + (System.currentTimeMillis() - start) + "ms");
// 更新clob字段
// sql = "UPDATE CLOB_TEST set clob=empty_clob() where id = '"
// + idtmp + "'";
// pstmt.executeUpdate(sql);
// oracle.sql.CLOB clobFile = null;
// if (rs3.next()) {
// clobFile = (oracle.sql.CLOB) rs3.getClob(1);
// }
// Writer wr = clobFile.getCharacterOutputStream();
// wr.write("dd");
// wr.flush();
// wr.close();
// // 关闭
// rs3.close();
// pstmt.close();
// conn.close();
// //
} catch (Exception e) {
e.printStackTrace();
}
}
}
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12548713/viewspace-45915/,如需转载,请注明出处,否则将追究法律责任。