2021-04-21 08:35  阅读(83)
文章分类:Servlet 简单教程 文章标签:Servlet
©  原文作者:一点教程 原文地址:http://www.yiidian.com/servlet/

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

1 准备需要显示的图片

提前在D盘的upload目录中准备一张图片(注意:根据自身情况准备即可):

202104210831115_1.png

2 编写index.jsp

index.jsp:

    
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>一点教程网-使用Servlet显示图片</title>
    </head>
    <body>
    <h1>使用Servlet显示图片</h1>
    <a href="DisplayImage">显示图片</a>
    </body>
    </html>

3 编写DisplayImage

DisplayImage用于读取图片,并显示到用户:

    
    import com.lowagie.text.Document;
    import com.lowagie.text.Font;
    import com.lowagie.text.PageSize;
    import com.lowagie.text.Paragraph;
    import com.lowagie.text.pdf.BaseFont;
    import com.lowagie.text.pdf.PdfWriter;
    
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.awt.*;
    import java.io.*;
    import java.util.Iterator;
    import java.util.List;
    
    /**
     * 一点教程网 - http://www.yiidian.com
     */
    public class DisplayImage extends HttpServlet {
    
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
    
            response.setContentType("image/png");
            ServletOutputStream out;
            out = response.getOutputStream();
            FileInputStream fin = new FileInputStream("d:\\upload\\logo.png");
    
            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();
        }
    }
    

4 配置web.xml

web.xml:

    
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
    
        <servlet>
            <servlet-name>DisplayImage</servlet-name>
            <servlet-class>DisplayImage</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>DisplayImage</servlet-name>
            <url-pattern>/DisplayImage</url-pattern>
        </servlet-mapping>
    
    </web-app>

5 运行测试

202104210831111_2.png

20210421083112_3.png

点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> 使用Servlet显示图片
上一篇
使用Servlet将数据写入PDF
下一篇
使用Servlet生成验证码