ServletContext

ServletContext 

ServletContext 对象可以看做是web项目的法人.
我们一个WEB项目 有 且只有一个ServletContext 
创建: 随着项目的启动而创建
销毁:随着项目的关闭而销毁
获得:通过ServletConfig对象的 getServletContext方法获得.
功能:
1.可以获得项目参数
2.是Servlet技术中的3个域对象之一
3.获得项目内的资源

功能详解:

1>获得项目参数

String getInitParameter(String name) 
Enumeration getInitParameterNames()

2>域功能

Servlet三大域
application
request
session
jsp技术中的域
page

域用于服务器组件之间的通讯(例如:两个servlet之间通讯).
域的实质就是map.
application域 就是在整个项目内共享数据的map.

*操作域的方法:
void setAttribute(String key,Object value);
Object getAttribute(String key);

Enumeration<String> getAttributeNames();

void removeAttribute(String key);

3>获得项目内资源

//  该方法使用相对路径获得 资源的流   其中  "/" ==> 项目根下 WebRoot 
InputStream sc.getResourceAsStream(); 
// 使用相对路径获得绝对路径
String  sc.getRealPath("/student.xml");

使用Class获得项目内资源


//获得当前servlet的Class文件
Class c  = this.getClass();
//2 根据Class 获得资源  
//也是根据相对路径获得字节流
// 填写相对路径时分为两种情况
// "/"开头        : "/"=>代表classes目录
// 不以"/"开头:  会以当前class所在包为根
InputStream is = c.getResourceAsStream("student.xml");
System.out.println(is);
//获得web-inf/classes下的student.xml的流
InputStream is2 = c.getResourceAsStream("/student.xml");
System.out.println(is2);

//也可以获得绝对路径
URL url =  c.getResource("/student.xml");

System.out.println(url.getPath());
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Barry__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值