Foros del Web » Programación para mayores de 30 ;) » Java »

Mostrar en JSP+servlet una tabla con string e imagenes

Estas en el tema de Mostrar en JSP+servlet una tabla con string e imagenes en el foro de Java en Foros del Web. Buenas a todos, queria crear para el tipico backend que mostrara todas las imagenes con su respectivo nombre. He utilizado en la servlet el que ...
  #1 (permalink)  
Antiguo 21/12/2016, 05:37
 
Fecha de Ingreso: octubre-2013
Mensajes: 51
Antigüedad: 4 años
Puntos: 0
Mostrar en JSP+servlet una tabla con string e imagenes

Buenas a todos,


queria crear para el tipico backend que mostrara todas las imagenes con su respectivo nombre.

He utilizado en la servlet el que muestre la imagen de la bbdd ya convirtiendo el contenido binario en jpg.

Despues en JSP realizaria una nueva consulta para mostrar los campos String.
Y en una etiqueta img llamaria a la servlet para mostrar la imagen en el tamaño deseado(ya que la servlet la muestra en tamaño grande).
El problema que encuentro es que en el JSP muestra la imagen pero no muestra el campo String nombre.

Subo el codigo, gracias por las ideas!


Servlet:

package Imagenes;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.sql.*;
import javax.imageio.ImageIO;
import java.io.ByteArrayInputStream;
import javax.servlet.ServletOutputStream;
import java.awt.image.BufferedImage;


@WebServlet(urlPatterns = {"/select"})
public class select extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html;charset=UTF-8");
ServletOutputStream ouputStream = response.getOutputStream();



try {

String d = "com.mysql.jdbc.Driver";
Class.forName(d);
String sURL = "jdbc:mysql://localhost:3306/imagenes";
Connection Conexion;
Conexion = DriverManager.getConnection(sURL, "root", "oldViews17");

PreparedStatement misentencia;
misentencia = Conexion.prepareStatement("SELECT Nombre,Imagen FROM Imagenes where Nombre='rosa'");
ResultSet rs = misentencia.executeQuery();

while (rs.next()) {

Blob blob = rs.getBlob("Imagen");
byte[] data = blob.getBytes(1, (int) blob.length());
BufferedImage img = null;

img = ImageIO.read(new ByteArrayInputStream(data));

response.setContentType("image/jpeg");
response.setHeader("content-disposition",
"inline; fileName=\"001.jpg\"");

int length = -1;

ByteArrayOutputStream output = new ByteArrayOutputStream();

output.write(data, 0, data.length);

response.setContentType("image/jpeg ");
response.setHeader("content-disposition",
"inline; fileName=\"foto.jpg\"");
response.setContentLength(output.size());


OutputStream out = response.getOutputStream();
output.writeTo(out);
out.flush();
out.close();


}

} catch (IOException ex) {

} catch (SQLException ex) {

}
catch(ClassNotFoundException ex)
{

}

}
}










JSP:





<%@page import="Imagenes.*" %>
<%@page import="java.sql.*" %>
<%@page import="java.io.*" %>
<%@page import="javax.servlet.http.*" %>
<%@page import="javax.imageio.ImageIO" %>
<%@page import="javax.servlet.ServletOutputStream" %>
<%@page import="java.awt.image.BufferedImage" %>

<jsp:setProperty name="imagen" property="*" />

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<HTML ><HEAD><TITLE>AIRPHONE</TITLE><META charset='utf-8'/><link rel='stylesheet' type='text/css' href='http://192.168.4.144/Styles/style.css'/></HEAD><BODY><HEADER><H1>Mostrar Imagenes</H1></HEADER><H2>Imagenes</H2><SECTION id='content'>
<TABLE><TR><TD >Nombre</TD><TD>FOTO</TD></TR>


<%
try {
String d = "com.mysql.jdbc.Driver";
Class.forName(d);
String sURL = "jdbc:mysql://localhost:3306/imagenes";
Connection Conexion;
Conexion = DriverManager.getConnection(sURL, "root", "oldViews17");

PreparedStatement misentencia;
misentencia = Conexion.prepareStatement("SELECT Nombre,Imagen FROM Imagenes where Nombre='rosa'");
ResultSet rs = misentencia.executeQuery();



String nombre = rs.getString("Nombre");
%>

<th><td ><%=nombre %></td></th>

<%

}
catch (SQLException ex) {

}
catch(ClassNotFoundException ex)
{

}

%>
<th><td ><img src="http://localhost:8080/SubirImagenes/select" width="190px" height="100px" align="right"></td></th>

</table>
</form>

</body>
</html>

Etiquetas: exception, imagenes, jsp, set, string, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:00.