六祎:使用 IOUtils获取类路径下的资源
第一步:创建一个Javaweb项目
第二步:创建一个包,创建一个Servlet类
第三步:导入一个IOUtils组件包,放在 /WEB-INF/lib目录下
第四步:创建一个a.txt文件放在 src目录下
所需jar包:https://download.csdn.net/download/qq_41086359/11828770
package cn.lystudio.servlet;
import java.io.IOException;
import java.io.InputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
/**
* 演示 获取类路径下的资源
*/
public class AServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
/**
*
* 1. 先得到class ,再得到 ClassLoader
* 2.调用其 getResourceAsStream() ,得到一个 InputStream
*/
/*
* ClassLoader c1 = this.getClass().getClassLoader(); InputStream input =
* c1.getResourceAsStream("a.txt");
*/
Class c = this.getClass();
//相对当前.class文件所在目录
// InputStream input = c.getResourceAsStream("a.txt");
//相对clsaaes下
// InputStream input = c.getResourceAsStream("/a.txt");
//获取 jsp资源
InputStream input =c.getResourceAsStream("/../../index.jsp");
String s = IOUtils.toString(input); //读取输入流内容,转换成字符串返回
System.out.println(s);
}
}
------------------------------------------------------------------------------------
web.xml配置文件
说明:
正常情况下是自动配置的,如果没有则自己添加,这里给出参考!
<display-name>Get_classfile</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<description></description>
<display-name>AServlet</display-name>
<servlet-name>AServlet</servlet-name>
<servlet-class>cn.lystudio.servlet.AServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AServlet</servlet-name>
<url-pattern>/AServlet</url-pattern>
</servlet-mapping>
</web-app>
测试即可!