Como Visualizar Imagenes en JSP desde la BD Mysql
Publicado por maria (1 intervención) el 25/07/2006 08:49:37
Hola, me gustaria saber Como Visualizar Imagenes en JSP desde la BD Mysql he implementado un codigo que vi en una pagina, pero ese codigo lo que me hace es mostrarme la imagen pero en toda la pagina (imagino que es por el response). Bueno...la verdad es que no tengo ni idea de como hacer. Lo que deseeo es mostrar varias imagenes de mi base de datos en una pagina jsp.
Aqui les dejo el codigo que les comente por si acaso estoy cerca de la solucion. Aunque no creo. Gracias de antemano y disculpen la novatada!!
<%@ page import="java.sql.*" %>
<%@ page import='java.io.InputStream' %>
<%@ page import='java.io.OutputStream' %>
<%
String login = "root";
String password = "root";
String url = "jdbc:mysql://localhost/bds";
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
int nBytes=0;
%>
<html><style type="text/css">
<!--
body {
background-color: #F5f5f5;
}
-->
</style><body>
<p>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance ();
conn = DriverManager.getConnection(url, login, password);
statement = conn.createStatement();
rs = statement.executeQuery("SELECT foto FROM usuario where Login='maria'");
try{
if(rs.next()){
response.setContentType("image/jpeg");
InputStream is = rs.getBinaryStream(1);
OutputStream aux= response.getOutputStream();
out.println("jajaja");
byte [] buffer = new byte[4096];
for (;;) {
nBytes = is.read(buffer);
if (nBytes == -1)
break;
aux.write(buffer, 0, nBytes);
}
is.close();
aux.flush();
aux.close();
}else{
throw new SQLException("image not found");
}
rs.close();
} catch (SQLException e) { out.println("Imagen no encontrada");}
out.println("no se muestra");
%>
</p>
<p> </p>
</body></html>
Aqui les dejo el codigo que les comente por si acaso estoy cerca de la solucion. Aunque no creo. Gracias de antemano y disculpen la novatada!!
<%@ page import="java.sql.*" %>
<%@ page import='java.io.InputStream' %>
<%@ page import='java.io.OutputStream' %>
<%
String login = "root";
String password = "root";
String url = "jdbc:mysql://localhost/bds";
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
int nBytes=0;
%>
<html><style type="text/css">
<!--
body {
background-color: #F5f5f5;
}
-->
</style><body>
<p>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance ();
conn = DriverManager.getConnection(url, login, password);
statement = conn.createStatement();
rs = statement.executeQuery("SELECT foto FROM usuario where Login='maria'");
try{
if(rs.next()){
response.setContentType("image/jpeg");
InputStream is = rs.getBinaryStream(1);
OutputStream aux= response.getOutputStream();
out.println("jajaja");
byte [] buffer = new byte[4096];
for (;;) {
nBytes = is.read(buffer);
if (nBytes == -1)
break;
aux.write(buffer, 0, nBytes);
}
is.close();
aux.flush();
aux.close();
}else{
throw new SQLException("image not found");
}
rs.close();
} catch (SQLException e) { out.println("Imagen no encontrada");}
out.println("no se muestra");
%>
</p>
<p> </p>
</body></html>
Valora esta pregunta


0