import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Test {
static String Driver="org.gjt.mm.mysql.Driver";
static String url="jdbc:mysql://localhost:3306/XXX";
static String user="root";
static String password="123456";
public static void main(String[] args) throws Exception{
Connection conn=null;
try{
Class.forName(Driver);
conn=DriverManager.getConnection(url,user,password);
int op=1;
if(op==0){
String sql="inset into tb_file values(?,?)";
PreparedStatement pt=conn.prepareStatement(sql);
pt.setString(1,"sourcefile.exe");
InputStream in=new FileInputStream("F:\\sourceifle.exe");
pt.setBinaryStream(2,in,in.available());
pt.executeUpdate();
pt.close();
}else{
String sql="select * from tb_file where filename=?";
PreparedStatement pt=conn.prepareStatement(sql);
pt.setString(1,"a.exe");
ResultSet rs=pt.executeQuery();
rs.next();
InputStream in=rs.getBinaryStream("filecontent");
System.out.println(in.available());
FileOutputStream out=new FileOutputStream("F:\\destination.exe");
byte[] b=new byte[1024];
int len=0;
while((len=in.read(b))!=-1){
out.write(b,0,len);
out.flush();
}
out.close();
in.close();
rs.close();
pt.close();
}
}catch(Exception e){
e.printStackTrace(System.out);
}finally{
try{
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}