Mostrar imagen de MySql tipo Blob a JSP
Publicado por Daniel (2 intervenciones) el 27/06/2019 23:03:51
Hola de nuevo a todos los del foro, en esta ocasión tengo una aplicación en JSP netbeans MVC lo que hace es guardar una imagen de tipo BLOB a Mysql y me funciona correctamente bien, pero ahora quiero recuperar la imagen que guarde en mi base de datos a una página JSP dentro de una tabla, eh buscado información en la web pero solo llego hasta este punto y no me muestran las imágenes en mi tabla JSP (solamente muestran iconos de imagenes).
Espero me puedan dar un apoyo un favor ya que exactamente no se que debo hacer hasta aquí, bueno también les dejo mi código, si falta más información diganmelo para subirlo, Gracias.
Código de la clase java "BD_Usuario" donde se ejecuta la consulta sql
Código del JSP donde se muestran las imágenes en una tabla
Resultado de la ejecución

Espero me puedan dar un apoyo un favor ya que exactamente no se que debo hacer hasta aquí, bueno también les dejo mi código, si falta más información diganmelo para subirlo, Gracias.
Código de la clase java "BD_Usuario" donde se ejecuta la consulta sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package Modelo;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import Conexion.Conexion;
public static ArrayList<Usuario> MostrarUsuarios(){
ArrayList<Usuario> lista = new ArrayList<Usuario>();
Connection cn;
Conexion con = new Conexion();
cn = con.conectar();
try{
PreparedStatement ps = cn.prepareCall("SELECT Codigo, Nombre, Imagen FROM PERSONA");
ResultSet rs = ps.executeQuery();
while(rs.next()){
Usuario Usu = new Usuario();
Usu.setCodigo_Usu(rs.getInt("Codigo"));
Usu.setNombre_Usu(rs.getString("Nombre"));
Usu.setRecuperar_Foto_Usu(rs.getBytes("Imagen"));
lista.add(Usu);
}
rs.close();
ps.close();
}catch(Exception e){
System.err.println(e.getMessage());
}
return lista;
}
Código del JSP donde se muestran las imágenes en una tabla
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="Modelo.Usuario"%>
<%@page import="Modelo.BD_Usuario"%>
<%@page import="java.util.ArrayList"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form>
<table>
<thead>
<td> Codigo </td>
<td> Nombre </td>
<td> Imagen </td>
</thead>
<%
ArrayList<Usuario> lista = BD_Usuario.MostrarUsuarios();
for(int i=0; i<lista.size(); i++){
Usuario Usu = lista.get(i);
%>
<tr>
<td> <%=Usu.getCodigo_Usu() %> </td>
<td> <%=Usu.getNombre_Usu() %> </td>
<td> <img src="data:image/jpg;base64,<%=Usu.getRecuperar_Foto_Usu() %>" /> </td> // Aquí creo que debe modificarse pero no se como hacer para que muestre imágenes
</tr>
<%
}
%>
<tr>
<td colspan="3">
<a href="Usuario.jsp">Registrar nuevo usuario</a>
</td>
</tr>
</table>
</form>
</body>
</html>
Resultado de la ejecución
- JSP_RecuperarImagen.rar(2,0 MB)
Valora esta pregunta


0