java oracle blob pdf

package com.java.to.oracle;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import oracle.jdbc.OraclePreparedStatement;

public class test01 {

public static void main(String args[]) throws SQLException, IOException,
IllegalAccessException, InstantiationException {/*
* try
* {Class.forName(
* "oracle.jdbc.driver.OracleDriver"
* ).newInstance();
* Connection conn =
* DriverManager
* .getConnection(
* "jdbc:oracle:thin:@192.168.60.196:1521:hkcncd6d"
* , "cn85_crd_dbo",
* "welcome1");
* Statement stmt =
* conn
* .createStatement
* (); ResultSet
* rsmm =
* stmt.executeQuery
* (
* "SELECT PH.PTFL_NUM, COUNT(DISTINCT(PH.ASST_SUB_GRP)) FROM CRD_PTFL_HLD PH WHERE PH.ASST_GRP = 'MM' AND ph.batch_id IN (8, 6, 192, 51, 271, 151) GROUP BY PH.PTFL_NUM  HAVING COUNT(DISTINCT(PH.ASST_SUB_GRP))=1"
* );
*
* while
* (rsmm.next()) {
* ResultSet rsban =
* stmt
* .executeQuery(
* "SELECT PH.PTFL_NUM, COUNT(DISTINCT(PH.ASST_SUB_GRP)) "
* +
* "FROM CRD_PTFL_HLD PH WHERE PH.ASST_GRP = 'BND' AND ph.batch_id "
* +
* "IN (8, 6, 192, 51, 271, 151)  AND PH.PTFL_NUM='"
* +rsmm.getString(
* "PTFL_NUM") +
* "' " +
* "GROUP BY PH.PTFL_NUM  HAVING COUNT(DISTINCT(PH.ASST_SUB_GRP))=1"
* ); while
* (rsban.next()) {
* System.out
* .println
* (rsban.getString
* ("PTFL_NUM")); }
*
* } } catch
* (Exception e) {
* e.
* printStackTrace(
* ); }
*/

try {
String str = "e:/test.pdf";
testReadFileFromBlob(str);
System.out.println("OK");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

public static void testReadFileFromBlob(String FileName)
throws java.lang.ClassNotFoundException, SQLException, IOException,
IllegalAccessException, InstantiationException {
byte[] b = new byte[1024];
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
Connection conn = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.60.196:1521:hkcncd6d",
"cn85_crd_dbo", "welcome1");
Statement pstmt = conn.createStatement();
String sql = "select pdf from CRFE_PDF_IDX t WHERE t.ptfl_num IN ('126000000001') AND t.pdf_id='15871'";
// pstmt.setInt(1, id);
ResultSet rs = pstmt.executeQuery(sql);
oracle.sql.BLOB pc = null;
while (rs.next()) {
pc = (oracle.sql.BLOB) rs.getBlob(1);
}
InputStream in = pc.getBinaryStream();
OutputStream os = new FileOutputStream(new File(FileName));
int len = 0;
while ((len = in.read(b)) != -1) {
os.write(b, 0, len);
}
os.flush();
os.close();
in.close();
rs.close();
pstmt.close();
conn.close();
}
}

猜你喜欢

转载自susteven.iteye.com/blog/1687572
今日推荐