0
이미지를 표시하려면이 코드가 있지만 작동하지 않습니다. 나에게 작은 정사각형의 이미지를 표시하지 않습니다. 나는 대답을 찾고 있었고, 찾을 수 없었습니다. 누군가 나를 도와주세요.JSP 파일에서 이미지 BLOB 유형의 MySQL을 표시 할 수없는 이유는 무엇입니까?
Show.jsp
<%@ page import="java.sql.*" %>
<%@ page import='java.io.InputStream' %>
<%@ page import='java.io.OutputStream' %>
<%
String login = "root";
String password = "";
String url = "jdbc:mysql://localhost/dbimagenes";
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
int nBytes=0;
%>
<html><style type="text/css">
<!--
body {
background-color: #F5f5f5;
}
-->
</style><body>
<h1>Imagen desde MySQL</h1>
<table>
<tr><td>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url, login, password);
statement = conn.createStatement();
rs = statement.executeQuery("SELECT imagen FROM t_imagenes where id='2'");
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");
%>
</td></tr></table>
<p> Imagen</p>
<a href="index.html">PRINCIPAL</a>
</body></html>
MySQL의에 이미지를 저장하는 내 방법은이 방법이다
:
Insert.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@include file="conexion.jsp" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Insertar</h1>
<%
String nombre=request.getParameter("txtnombre");
String marca=request.getParameter("txtmarca");
String imagen=request.getParameter("txtimagen");
if(nombre!=null && marca!=null && imagen!=null){
String qry ="insert into t_imagenes(nombre,marca,imagen) values('"+nombre+"','"+marca+"','"+imagen+"')";
sql.executeUpdate(qry);
out.print("Datos Registrados "
+ "<a href='index.jsp'>REGRESAR</a>");
}else{
%>
<form name="frmimagenes" method="post" action="insertar.jsp">
nombre: <input type="text" name="txtnombre"/><br/>
marca: <input type="text" name="txtmarca"/><br/>
imagen: <input type="file" name="txtimagen" value="" size="50" /><br/>
<input type="submit" value="Guardar">
</form>
<%}//else%>
</body>
</html>