ServletContext
#2020云栖大会#阿里云海量offer来啦!投简历、赢阿里云限量礼品及阿里云ACA认证免费考试资格!>>>
ServletContext
IT那个小笔记
什么是ServletContext
ServletContext生命周期
获取上下文对象
通过对象获取信息
什么是ServletContext
ServletContext代表是一个web应用的上下文对象(web应用对象)
里面封装的都是web应用信息,因此一个ServletContext对应一个应用
ServletContext是一个域对象
什么是域?
能够存储数据
域对象
能够存取数据数据就的对象
ServletContext域对象的作用范围
整个web应用
所有的web资源都可以进行存取数据
数据是可以共享的
获取完ServletContext之后向里面写数据
context.setAttribute(String name,Object value);
获取完ServletContext之后,通过name取出存放的数据
context.getAttribute(String name);
获取完ServletContext之后,删除指定名称的值
Context.removeAttribute(String name);
只要是一个域对象上,基本上里面都有这几个方法
ServletContext生命周期
在服务器一启动的时候就会创建
在服务器关闭的时候销毁
获取上下文对象
1.通过init方法当中一个参数ServletConfig来获取
2.直接在HttpServlet当中获取

this.getServletContext()找到父类GenericServlet的这个方法
它相当于还是用ServletConfig对象来获取
通过对象获取信息
在web.xml中可以初始化一些参数,在一个项目中的任何地方通过获取上下文对象ServletContext就可以获取它们
<servlet><servlet-name>ServletConfigTest</servlet-name><servlet-class>com.vae.servlet.ServletConfigTest</servlet-class><init-param><param-name>name1</param-name><param-value>value1</param-value></init-param></servlet><context-param><param-name>dd</param-name><param-value>4</param-value></context-param>
/*<servlet>中的参数<init-param>只能在本servlet代码中通过当前servlet的config获得config.getInitParameter("name1") 或this.getInitParameter("name1")而<context-param>是全局参数在项目任何地方获取上下文对象ServletContext就可以获取ServletContext context = config.getServletContext()c.getInitParameter("dd")*/
获得Web应用中某一个资源的资源的绝对路径
context.getRealPath("文件")
相对的是web应用根目录
context.getRealPath("index.html")
D:\Java\Tomcat\apache-tomcat-7.0.85\webapps\应用名\index.html
在会你写的名称前面自动拼接上当前工程的绝对地址
勤学如春起之苗,不见其增,只有所长。辍学如磨刀之石,不见其增,日有所亏
本文分享自微信公众号 - IT那个小笔记(qq1839646816)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

浙公网安备 33010602011771号