一、直接使用 getResourceAsStream()

XXX.class.getResourceAsStream("xxx.xxx"); // 读取当前XXX类所在包下的 xxx.xxx
XXX.class.getResourceAsStream("/xxx.xxx"); // 加上“/”后,读取程序运行根目录,即 src 目录里面的 xxx.xxx

二、在 getClassLoader() 后使用

XXX.class.getClassLoader().getResourceAsStream("xxx.xxx"); // 这样就直接读取程序运行根目录的 xxx.xxx

需要注意的时,这时候不能添加“/”,否则会报 NullPointerException 异常。

三、 ServletContext. getResourceAsStream()

ServletContext. getResourceAsStream(“xxx.xxx”) // 默认从WebAPP根目录下取资源

在 Tomcat 下 xxx.xxx 是否以’/'开头无所谓,这和具体的容器实现有关。JSP 下的 application 内置对象就是上面的 ServletContext 的一种实现。

最后修改于 2019-03-31 10:58:17
上一篇