我已经成功地插入到SQL数据库通过.JSP程序的学生的细节,他的形象。 问题是,当我回来取回的学生通过其他的.jsp程序只图像显示,学生的任何其他信息存储的信息。
任何一个可以帮助我的代码检索存储团块图像和其他信息一起显示?
我使用Oracle数据库11g。
它有一个名为studdetail student表。 它具有五列,第1列到第4列是VARCHAR2和第五列是团块。 我已经能够成功地通过插入HTML和JSP程序值到数据库中。 但是,当我回检索信息的问题出现了。 它只显示图像,但没有其他信息。
检索JSP代码:show.jsp
<%@page import="java.io.OutputStream"%>
<%@page import="java.sql.Blob"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
try{
Class.forName("oracle.jdbc.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:db","xxxx","apple");
PreparedStatement ps=con.prepareStatement("select * from studdetail");
ResultSet rs=ps.executeQuery();
while(rs.next()){ %>
<table><tr><th>student id:</th><td><%=rs.getString(1) %></td></tr>
<tr><th>student name:</th><td><%=rs.getString(2) %></td></tr>
<tr><th>student branch code</th><td><%=rs.getString(3) %></td></tr>
<tr><th>student contact number</th><td><%=rs.getString(4) %></td></tr>
<tr><th>students image</th><td>
<%
Blob bl=rs.getBlob(5);
byte[] image=bl.getBytes(1, (int)bl.length());
response.setContentType("image/bmp");
OutputStream o = response.getOutputStream();
o.write(image);
o.flush();
o.close();
}
%></td></tr>
</table>
<%
con.close();
}catch(Exception e){
out.print(e);
}
%>
</body>
</html>