gpt4 book ai didi

java - jsp页面中未从数据库加载图像

转载 作者:行者123 更新时间:2023-12-01 14:39:40 24 4
gpt4 key购买 nike

我正在尝试将表数据从数据库显示到jsp页面,所有数据均已获取,但图像未加载到图像选项卡中。我将图像存储为表中的 BLOB。

我的jsp页面如下:

<body>
<table border="1">

<%@ page import="com.*;"%>
<%
MySql myobj = new MySql();
myobj.connect();

String query="select contact_id,first_name,last_name,photo from contacts";

ResultSet rs = myobj.getdata(query);

while(rs.next())
{

%>
<tr>
<td>
<%= rs.getInt(1) %>
</td>

<td>
<%= rs.getString(2).toString() %>
</td>
<td>
<%= rs.getString(3).toString() %>
</td>

<td>
<img src="<%= rs.getString(4) %>" width="500" height="300" alt="data"></img>
</td>

</tr>
<%

}
%>


</table>
</body>

当单击第二个 div 的项目名称或数据时,我还必须实现下载,然后应下载相关数据。

can anyone solve my this problem soon ?

how to implement download in servlets as back end ?

我为 imageservlet 编写了这段代码:

protected void doGet( HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
{
String id = request.getParameter("contact_id");
MySql myobj = new MySql();
myobj.connect();
PrintWriter out=response.getWriter();
try
{
String query="select photo from contacts where contact_id='"+id+"'";

ResultSet rs = myobj.getdata(query);

out.println(id);

Blob image=null;
byte[] imgData = null;
image= rs.getBlob(1);
imgData = image.getBytes(1, (int) image.length());
response.setContentType("image/gif");
OutputStream o = response.getOutputStream();
o.write(imgData);
o.flush();
o.close();
response.sendRedirect("Message.jsp");
}
catch (Exception e)
{
e.getMessage();
}
}

最佳答案

您应该使用 servlet 来提供具有适当内容类型 header 的图像

<img src="img-servlet?contact_id=<%= rs.getInt(1) %>"  width="500" height="300" alt="data">

并且,在您的 servlet 中获取 contact_id 查询参数并获取图像内容

关于java - jsp页面中未从数据库加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16102530/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com