Web项目访问资源文件

同一个Web程序的所有Servlet都共享同一个ServletContext对象,这个对象可以看作为Servlet的共享内存区域,在关于路径文件方面的API有如下4个:

  • getResourcePaths 返回的是一个Set集合,参数必须以“/”为头,集合里面包含某一个目录的所有子目录和文件的路径名称,都用"/"开头,目录有"/"结尾,某一个目录是“根目录+参数”所代表的目录。Set的键是路径,值是组成键的字符数组。
  • getResource 返回一个URL对象,必须以“/”开头,代表的是根目录。
  • getResourceAsStream 返回某个资源的InputStream对象,实际上是打开了getResource返回的URL对象的输入流,参与与getResource一样。

如下为项目结构:                       

 

 

 

 

 

代码如下:

文件内容以及输入分别如下图

代码中注释那段是个留意点,可以采用Class对象的getResourceAsStream方法加载资源,它在内部使用了ClassLoader的同名方法加载,以查找类的形式查找资源文件。一个类装载器只负责加载一定目录下的类,Web应用程序的类装载器会搜索classes目录下的类,因此资源放在这下边可以加载,如果放在其他不能搜索的目录下则不能加载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值