0

我无法将数据库中的图像显示到我的 jsp 页面上,我仍然无法找到问题所在,请帮助。

我的小服务程序:

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        DBConnection db = new DBConnection();
        Connection conn;
         try {
             conn =  db.getDbConnection();
            PreparedStatement ps = conn.prepareStatement("select stu_image from student_images_table where STU_REG_NO = ?");
            String id = request.getParameter("studentregno");
            ps.setString(1,id);
            ResultSet rs = ps.executeQuery();
            rs.next();
            Blob  b = rs.getBlob("stu_image");            
            response.setContentType("image/jpeg");
            response.setContentLength( (int) b.length());
           // response.setContentLength(10);
            InputStream is = b.getBinaryStream();
            OutputStream os = response.getOutputStream();
            byte buf[] = new byte[(int) b.length()];
            is.read(buf);
            os.write(buf);
            os.close();
        }
        catch(Exception ex) {
             System.out.println(ex.getMessage());
        }
    }

我的 JSP:

<div id="bv_Image1" style="margin:0;padding:0;position:absolute;left:572px;top:31px;width:194px;height:162px;text-align:left;z-index:1;">
                        <img src="ProfileInquiryServlet" id="Image1" alt="" align="top" border="0" style="width:194px;height:162px;"></div>

我的显示器:

我的显示器没有图像

我可能做错了什么?

编辑: 我的 Web.xml 很大,但也许这可能是相关的;

<servlet>
        <servlet-name>ProfileInquiryServlet</servlet-name>
        <servlet-class>com.kollega.controller.ProfileInquiryServlet</servlet-class>
    </servlet>
     <servlet-mapping>
        <servlet-name>ProfileInquiryServlet</servlet-name>
        <url-pattern>/ProfileInquiryServlet</url-pattern>
    </servlet-mapping>
4

1 回答 1

0

为图像使用一个 servlet,并将其传递给studentregno

<img src="ProfileInquiryServlet?studentregno=${param.studentregno}" ...

这是一个单独的请求,因此需要具有该参数。


第一个 servlet 可以做request.setAttribute("regno", "...");,然后在 JSP 中就可以使用了${regno}。可request.getParameter("studentregno")作为${param.studentregno}.

于 2013-09-07T08:14:45.567 回答