提问者:小点点

如何在<img>src属性中给出servlet?[重复]


我使用以下代码从servlet中设置图像标记中的src属性。但它不起作用,任何人都可以帮助我做到这一点。

<img src="./imageDisplayProcess.do" alt="hai" width="117" height="160"/>

Servlet

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        try{

                Class.forName("com.mysql.jdbc.Driver");
                Connection connection =DriverManager.getConnection("jdbc:mysql://localhost:3306/raptor1_5","root","");
                Statement st1=connection.createStatement();
                ResultSet rs1 = st1.executeQuery("select Qimg from tbl_MatchImgToImg where C_code='R201AEV01'");
                String imgLen="";
                if(rs1.next()){
                    imgLen = rs1.getString(1);
                    System.out.println(imgLen.length());
                }   
                rs1 = st1.executeQuery("select Qimg from tbl_MatchImgToImg where C_code='R201AEV01'");
                if(rs1.next()){
                    int len = imgLen.length();
                    byte [] rb = new byte[len];
                    java.io.InputStream readImg = rs1.getBinaryStream(1);
                    int index=readImg.read(rb, 0, len); 
                    System.out.println("index"+index);
                    st1.close();
                    response.reset();
                    response.setContentType("image/jpg");
                    response.getOutputStream().write(rb,0,len);
                    response.getOutputStream().flush();             
                }



    }
        catch(Exception e){
            System.out.println(e);
        }
        }

web. xml

<servlet>
    <servlet-name>imageDisplayProcess</servlet-name>
    <servlet-class>get.imageDisplayProcess</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>imageDisplayProcess</servlet-name>
    <url-pattern>/imageDisplayProcess.do</url-pattern>
  </servlet-mapping>

共1个答案

匿名用户

假设你的servlet绑定到imageDisplayProcess.do:

您在超文本标记语言中使用-Elements引用的图像是使用HTTPGET请求获取的。您在servlet中实现的是一个POST请求。

对于GET请求,您使用doGet()方法而不是doPost()。