PLSQLストアドを呼び出す(Oracle)

package example;

import java.io.*;
import java.sql.*;
import java.sql.*;
import oracle.jdbc.driver.*;

public class TestBlob {

	static final String dbuser    = "user";
	static final String dbpass    = "pass";
	static final String constring = "jdbc:oracle:thin:@localhost:1521:orcl";

	// ファイルPATH
	static String insertFileName = "c:/tmp/test.csv";

	public static void main(String[] args) {

		try {

			byte[] data = getByteArray(insertFileName);

			Connection con = null;
			Class.forName("oracle.jdbc.driver.OracleDriver");
			con = DriverManager.getConnection(constring,dbuser,dbpass);
			con.setAutoCommit(false);

			cstmt = con.prepareCall("{call testProc(?, ?)}");
			cstmt.setInt(1, empno);
			cstmt.registerOutParameter(2, OracleTypes.BLOB);
			cstmt.executeQuery();
			BLOB blob = (BLOB)cstmt.getObject(2);
			blob.putBytes(1, data);
			con.commit();
			con.close();

		} catch (Exception e){
			e.printStackTrace();
		}
	}

	/**
	 * ファイル内容をbyte配列で取得する
	 * @param filePath
	 * @return byte[]
	 * @throws Exception
	 */
	public static byte[] getByteArray(String filePath) throws Exception {
		
		StringBuffer sb = new StringBuffer();
		BufferedReader reader = new BufferedReader(new FileReader(filePath));
		String rec = null;
		while ((rec = reader.readLine()) != null) {
			sb.append(reader.readLine());
		}
		return sb.toString().getBytes();
	}

}

トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-06-11 (木) 00:48:38 (4351d)