⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lobexample4.java

📁 Connection Oracle9i database Read and Wrote Lob ,long or long raw type and save to file
💻 JAVA
字号:
import java.io.File;
import java.io.InputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.sql.*;
import oracle.sql.*;

public class LobExample4 {
	public static void readBLOB(Statement stmt,String fileName,
	                            String sourceDirectory,String targetDirectory)
	                            throws SQLException,IOException {
	  
	  ResultSet rs = stmt.executeQuery("select blob_column from blob_content ");
	  rs.next();
	  BLOB myBlob = ((oracle.jdbc.OracleResultSet)rs).getBLOB(1);	  
	  InputStream in = myBlob.getBinaryStream();
	  String saveFile = targetDirectory + "readBLOB"+fileName;
	  saveFile(in,saveFile);
	  in.close();
	  System.out.println("Read BLOB and save file "+saveFile);
	} // end of readBLOB
	
	public static void readCLOB(Statement stmt,String fileName,
	                            String sourceDirectroy,String targetDirectory)
	                            throws SQLException,IOException {
	  
	  ResultSet rs = stmt.executeQuery("select clob_column from clob_content");
	  rs.next();
	  CLOB myClob = ((oracle.jdbc.OracleResultSet)rs).getCLOB(1);
	  InputStream in = myClob.getAsciiStream();
	  String saveFile = targetDirectory + "readCLOB"+fileName;
	  saveFile(in,saveFile);
	  in.close();
	  System.out.println("Read CLOB and saved file "+saveFile);
	} // end of readCLOB
	
	public static void saveFile(InputStream in,String saveFile) throws IOException {
		FileOutputStream out = new FileOutputStream (
		                           new File(saveFile));
	  byte[] byteBuffer = new byte[8132];
	  int byteRead;
	  while((byteRead = in.read(byteBuffer)) != -1 ) {
	  	out.write(byteBuffer);
	  }
	  out.close();
	} // end of saveFile
	
	public static void main(String[] args) throws SQLException,IOException {
		DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
		Connection conn = DriverManager.getConnection("jdbc:oracle:thin:swatt/swgood@10.10.10.251:1521:test");
		conn.setAutoCommit(false);
		
		Statement stmt = conn.createStatement();
		String sourceDirectory = "D:\\JSPBook\\JDBC\\JDBC_book\\sample_files\\";
		String targetDirectory = "D:\\JSPBook\\JDBC\\JDBC_book\\";
		
		readBLOB(stmt,"binaryContent.doc",sourceDirectory,targetDirectory);
		readCLOB(stmt,"textContent.txt",sourceDirectory,targetDirectory);
		
		stmt.close();
		conn.close();
	} //end of main
	
}
	
	  
	  
	  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -