📜  使用Servlet显示图像的示例

📅  最后修改于: 2021-01-09 13:41:17             🧑  作者: Mango

使用Servlet显示图像的示例

在此示例中,我们使用FileInputStream类读取图像,并使用ServletOutputStream类将此图像内容写入作为响应。为了提高性能,我们使用了BufferedInputStream和BufferedOutputStream类。

您需要使用内容类型image / jpeg

在此示例中,我们假设您在c:\ test目录中具有java.jpg图像。您可以相应地更改位置。

要创建此应用程序,我们创建了三个文件:

  • index.html
  • DisplayImage.java
  • web.xml

该文件创建一个调用servlet的链接。 Servlet的url模式是servlet1。

该Servlet类使用ServletOutputStream和BufferedOutputStream类从提到的目录中读取图像并将内容写入响应对象。

package com.javatpoint;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DisplayImage extends HttpServlet {

    public void doGet(HttpServletRequest request,HttpServletResponse response)
             throws IOException
    {
    response.setContentType("image/jpeg");
    ServletOutputStream out;
    out = response.getOutputStream();
    FileInputStream fin = new FileInputStream("c:\\test\\java.jpg");
    
    BufferedInputStream bin = new BufferedInputStream(fin);
    BufferedOutputStream bout = new BufferedOutputStream(out);
    int ch =0; ;
    while((ch=bin.read())!=-1)
    {
    bout.write(ch);
    }
    
    bin.close();
    fin.close();
    bout.close();
    out.close();
    }
}