
how to insert an image into sql server and retrieve it using jSP

Hi Friend,
Try the following code:
<%@page import="java.sql.*,java.io.*"%>
<%
try{
InputStream sImage;
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
File imgfile = new File("C:/rose.jpg");
FileInputStream fin = new FileInputStream(imgfile);
PreparedStatement pre = con.prepareStatement("insert into user values(?,?,?,?)");
pre.setInt(1,1);
pre.setString(2,"A");
pre.setString(3,"Delhi");
pre.setBinaryStream(4,fin,(int)imgfile.length());
pre.executeUpdate();
System.out.println("Inserting Successfully!");
pre.close();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select image from user where id=1");
if(rs.next()) {
byte[] bytearray = new byte[1048576];
int size=0;
sImage = rs.getBinaryStream(1);
response.reset();
response.setContentType("image/jpeg");
while((size=sImage.read(bytearray))!= -1 ){
response.getOutputStream().write(bytearray,0,size);
}
}
rs.close();
st.close();
con.close();
}
catch(Exception ex){
out.println("error :"+ex);
}
%>
Thanks
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.