Assim não funciona:
ResultSet rs = null;
Connection conn = null;
PreparedStatement stmt = null;
String url = "jdbc:postgresql://localhost/app1";
try {
Class.forName("org.postgresql.Driver");
conn = DriverManager.getConnection(url,"xxxx","yyyyy");
String sql = " select foto from pesssoa where idpesso=?";
try {
stmt = conn.prepareStatement(sql);
stmt.setLong(1,id);
rs = stmt.executeQuery();
rs.next();
//=================
byte[] bytearray = new byte[4096];
int size=0;
InputStream sImage;
sImage = rs.getBinaryStream("foto");
response.reset();
response.setContentType("image/jpeg");
response.addHeader("Content-Disposition","filename=getimage.jpeg");
while((size=sImage.read(bytearray))!= -1 ) {
response.getOutputStream().write(bytearray,0,size);
}
response.flushBuffer();
sImage.close();
conn.close();
}
Alguem sabe?