我已经编写了一个程序来从mysql数据库中检索图像列表(blob文件)然后调用我的jsp程序中的方法来显示各自的图像,我知道我错了,所以请需要一些指导来解释我在jsp页面中显示图像的方式。
我正在使用一个列表,因为在我的客户端,我有一个项目列表,当我点击相应的项目时,我存储在我的数据库中的图像应该根据项目的类型进行检索。
public List<Blob> imageCategoryList(String msg_type) {
List imgList = new ArrayList<String>();
try {
Class.forName("com.mysql.jdbc.Driver");
connection = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:3306/image",
"root","root");
state = (Statement) connection.createStatement();
prep = (PreparedStatement) connection
.prepareStatement("Select tt_images from timetable where
message_type = ?");
prep.setString(1,msg_type);
rSet = prep.executeQuery();
while (rSet.next()) {
Blob image = rSet.getBlob("tt_images");
InputStream is = image.getBinaryStream();
imgList.add(is);
}
connection.close();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return imgList;
}
在我的服务器端,我有一个jsp页面,其中包含与客户端相同的项目列表,并对另一个jsp页面执行操作,我在其中编写了以下代码,请更正我的错误
<%
Server_Sql server_Sql = new Server_Sql();
String gcm_msg_type = request.getParameter("year_branch");
List<Blob> imgList = server_Sql.imageCategoryList(gcm_msg_type);
%>
<%
for (int i = 0; i < imgList.size(); i++) {
%>
<%=imgList.get(i)%>
<%
}
%>
感谢你
答案 0 :(得分:0)
这不是html的工作原理。您需要先加载(html)网页,然后在该页面上显示&lt; img&gt;将在每个单独的请求中加载的标签。您可以编写JSP / Servlet来将blob
转换为图像(基本上您只需要设置内容类型)但添加到网页本身不会起作用