Servlet – 显示图像
FileInputStream 类用于读取图片,ServletOutputStream 类用于写入图片内容作为响应。我们使用 BufferedInputStream 和 BufferedOutputStream 类来提高性能。我们必须使用 image/jpeg 内容类型。在 C:\Images 目录中,有一个 GFG.jpeg 图像。您可以根据需要调整位置。我们将在此示例中创建以下页面:
例子
我们创建了三个文件来制作这个应用程序:
- 索引.html
- 显示图像。Java
- web.xml
index.html 文件创建一个调用 servlet 的链接。 servlet 的 URL 模式是“servlet1”。 ServletIO 示例。 Java servlet 类从指定目录读取图片,并使用 ServletOutputStream 和 BufferedOutputStream 类将内容写入响应对象。
1. index.html
HTML
Display GFG Image
click for photo
Java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DisplayImageGfg extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException
{
// set the content type to image/jpeg.
response.setContentType("image/jpeg");
ServletOutputStream out;
// Writing this image
// content as a response
out = response.getOutputStream();
// path of the image
FileInputStream fin = new FileInputStream("C:\\Images\\GFG.jpeg");
// getting image in BufferedInputStream
BufferedInputStream bin = new BufferedInputStream(fin);
BufferedOutputStream bout = new BufferedOutputStream(out);
int ch =0;
while((ch=bin.read())!=-1)
{
// display image
bout.write(ch);
}
// close all classes
bin.close();
fin.close();
bout.close();
out.close();
}
}
XML
DisplayImageGfg
DisplayImageGfg
DisplayImageGfg
/DisplayImageGfg
2. ServletIO 示例。Java
Java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DisplayImageGfg extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException
{
// set the content type to image/jpeg.
response.setContentType("image/jpeg");
ServletOutputStream out;
// Writing this image
// content as a response
out = response.getOutputStream();
// path of the image
FileInputStream fin = new FileInputStream("C:\\Images\\GFG.jpeg");
// getting image in BufferedInputStream
BufferedInputStream bin = new BufferedInputStream(fin);
BufferedOutputStream bout = new BufferedOutputStream(out);
int ch =0;
while((ch=bin.read())!=-1)
{
// display image
bout.write(ch);
}
// close all classes
bin.close();
fin.close();
bout.close();
out.close();
}
}
3.web.xml
XML
DisplayImageGfg
DisplayImageGfg
DisplayImageGfg
/DisplayImageGfg
输出:
当您运行 index.html 文件时,您将看到以下结果。
要获取输出,请单击链接。