不指定虚拟路径的前提下通过http访问pdf图片等文件

Posted qlqwjy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不指定虚拟路径的前提下通过http访问pdf图片等文件相关的知识,希望对你有一定的参考价值。

  

  通常我们通过http访问图片或者pdf的时候都是将文件上传到指定文件夹下面,然后通过配置虚拟路径来访问指定的资源。

  在不配置虚拟路径的情况下,我们通过获取到response的outpurstream,然后向该outputstream输出指定的文件也可以,用IOUtils工具类更是简单方便。

例如:

  依赖的包:

    技术分享图片

 

package cn.qlq.web;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.io.IOUtils;

/**
 * Servlet implementation class TestServlet
 */
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        FileInputStream in = null;
        ServletOutputStream outputStream = null;
        try {
            in = new FileInputStream(new File("C:\\Users\\Administrator\\Desktop\\测试文档\\Java开发-太原科技大学-软件工程-乔利强.pdf"));
            outputStream = response.getOutputStream();
            IOUtils.copyLarge(in, outputStream);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            IOUtils.closeQuietly(in);
            IOUtils.closeQuietly(outputStream);
        }
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

 

 

测试:

技术分享图片

 

以上是关于不指定虚拟路径的前提下通过http访问pdf图片等文件的主要内容,如果未能解决你的问题,请参考以下文章

反向代理技术

SpringBoot配置虚拟化路径用于图片的展示

PHP pdf格式文件转png图片

如何利用图片和一句话木马合成的jpg(或gif)文件入侵网站?

461word图片高清转成pdf

Python获取指定目录下的所有文件路径获取指定目录下所有文件名(但是不包含子目录中文件名)获取指定目录下所有pdf文件名(但是不包含子目录中pdf文件名)