Servlet上下文
ServletContext接口
ServletContext接口定义Servlet运行在的Web应用的视图。容器供应商提供Servlet容器的针对ServletContext的接口实现。可以使用ServletContext对象来记录时间获取URL引用资源、存取上下文的其他Servlet可访问的属性。每一个部署到容器中的Web应用都有一个ServletContext接口实例来与接口关联。如果容器内的Servlet没有部署到Web应用中,则作为“默认”Web应用的一部分,并有一个默认的ServletContext。
Servletcontext初始化参数
- getInitParamter
- getInitparamterNames
配置方法
- 编程式添加和配置Servlet
- addServlet(…) //该方法允许应用以编程方式声明一个servlet,并添加给定的参数
- T createServlet(…) //该方法实例化一个给定的Servlet Class,它必须支持适用于Servlet的除@WebServlet的所有注解,返回的Servlet实例通过调用addServlet注册到ServletContext之前,可以进一步的定制。
- ServletRegistration getServletRegistration(…) //该方法返回与指定名字的Servlet相关的ServletRegistration。
- Map getServletRegistration() //该方法返回ServletRegistration对象的map,由名称作为键对应注册到ServletContext的所有Servlet。
- 编程式添加和配置filter
- addFilter(…) //作用与servlet一致
- T createFilter(…) //作用与servlet一致
- FilterRegistration getFilterRegistration(…) //作用与servlet一致
- Map getFilterRegistration() //作用与servlet一致
- 编程式添加和配置listener
- void addListener(…) //向上下文中添加监听器,给定的监听器实例必须实现如下接口:
- javax.servlet.ServletContextAttributeListener
- javax.servlet.ServletRequestListener
- javax.servlet.ServletRequestAttributeListener
- javax.servlet.http.HttpSessionListener
- javax.servlet.http.HttpSessionAttributeListener
- javax.servlet.http.HttpSessionIdListener
- void createListener(…) //实例化监听器
- void addListener(…) //向上下文中添加监听器,给定的监听器实例必须实现如下接口:
上下文的属性
- setAttribute
- getAttribute
- getAttributeNames
- removeAttribute
资源的使用
ServletContext提供了直接访问Web应用中静态内容层次结构文件的方法,例如HTML、GIT和JPEG:
- getResource
- getResourceAsStream
这两个方法都需要一个以“/”开头的字符串作为参数,资源路径是相对于上下文的根路径,或者相对于web应用的WEB-INF/lib目录下META-INF/resources目录。这两个方法不能用于获取动态内容。
参考链接: 来自waylau翻译的《Java Servlet 3.1 规范》
自己使用整理收集,如有侵权 请联系删除!