package sundun.zfpt.gg.web;
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class InsertPic {
/**
* 插入图片到数据库(可以批量)
*/
public static void InsrtPicToDB(){
String sql = "insert into rdp0112.rdp_psignature(loginid,signature) values (?,?)";
String filepath = "E:/images";
File file = new File(filepath);
String [] filelist = file.list();
Connection conn = null;
PreparedStatement pst = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("开始连接数据库");
String url = "jdbc:oracle:thin:@10.196.20.11:1521:orcl";
String user = "user";
String password = "pass";
conn = DriverManager.getConnection(url, user, password);
pst = conn.prepareStatement(sql);
int m = 0;
for(int i=0;i<filelist.length;i++){
File reaFile = new File(filepath + "\\" + filelist[i]);
FileInputStream fis = new FileInputStream(reaFile);
String photoName = "";
if(filelist[i].length() >= 6){
photoName = filelist[i].substring(0, 6); //保存文件名当做一个字段的值
pst.setString(1, photoName);
pst.setBinaryStream(2, fis, (int) reaFile.length());
m++;
int n = pst.executeUpdate();
System.out.println(n + "条记录已经插入");
}
}
System.out.println("本次一共导入" + m + "条");
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
if(pst != null){
pst.close();
}
if(conn != null){
conn.close();
}
System.out.println("数据库关闭");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
InsrtPicToDB();
}
}