数据库拉取附件到本地

package com.web;

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

public class SqlFile{

//声明Connection对象
Connection con;
//驱动程序名
String driver = "oracle.jdbc.driver.OracleDriver";
//URL指向要访问的数据库名mydata
String url = "jdbc:oracle:thin:@10.0.0.0:1521/abcd";
//MySQL配置时的用户名
String user = "username";
//MySQL配置时的密码
String password = "password";

try {
Class.forName(driver);
con = DriverManager.getConnection(url,user,password);
String sql="select * from AC_FILE where ST_ID='00000000000000000000000001' ";
PreparedStatement ps=con.prepareStatement(sql);
ResultSet rs=ps.executeQuery();
System.out.println(rs);
while(rs.next()){

byte[] attach =rs.getBytes("BL_CONTENT");
String name = rs.getString("ST_FILENAME");
System.out.println(attach);
System.out.println(name);
File file=new File("C:\Users\Li&Fan\Desktop\"+name);

try {
OutputStream out = new FileOutputStream(file);
out.write(attach);
out.close();

//插进其他表

String 主键Id = UUID.randomUUID().toString();
String sql2 = "insert into 表名(主键Id,字段2,字段3) values(?,?,?)";
Object[] obj = {主键Id,attach,name,};
SQL.execute(sql2, obj);
System.out.println("插入成功!");

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}






}

}

原文地址:https://www.cnblogs.com/lifan12589/p/11730699.html