Interface ServlentContext

来源:互联网 发布:java文件压缩中文乱码 编辑:程序博客网 时间:2024/06/07 19:07

<初学,整理思路>

其实就是一套方法集合,这样servlet可以和servlet 容器进行通信,如:获得文件类型 分发请求,或者写入log

每一个虚拟机的每一个application都有一个context与之对应(一个web应用是一系列servlet和content页面(可能通过服务器URL命名空间(如/catalog )导入也有可能是通过.war导入的)的集合,也就是说context是这一系列servlet和content的通信基础,有人把context看做一个池子,也是有道理的。

对于一个部署了的web应用来说,每个虚拟机都有一个context实例与之对应,这种情况下,context并不能看做是完全意义上的一个全局变量,也就是不能被用做本地的一个全局变量来共享全局信息,全局变量可以用外部的资源(如数据库)来代替。

一个 ServletContext对象包含在一个 ServletConfig 对象里面,可以通过ServletConfig 对象getServletContext()方法获得这个servletcontext。

servletContext的field和方法(可以通过对field和方法的了解来看看context到底能得到application的什么信息,能干些什么):

field:

static string ORDERED_LIBS: WEB-INF/lib下面的jar文件名称(类型是一个list<String>),这个string内部的排序方式是web Fragments名称(可能会排除个别情况),如果没有任何相对或绝对的排序,那么就为空。

static string TEMPDIR:由servletContainer提供给ServletContext的临时目录(类型是java.io.file)。

method:

创建一些新东西,这个一看方法名就知道是干了些什么,当然每个方法因为输入参数的不同,有多重重载方式,但是目的是一样的了

addListener(...)

addFilter(...)

addServlet(...)

createListener(...)

createFilter(...)

createServlet(...)


下面主要是对已有属性的的操作,log也加在里面算了

removeAttribute(String name)

setAttribute(String name, Object object)

setInitParameter(String name, String value)

setSessionTrackingModes(Set<SessionTrackingMode> sessionTrackingModes)

log(String msg)

log(String message, Throwable throwable)


读取上下文相当全的信息了,几乎是整个application方方面面的信息了,这个context翻译成上下文还是比较有道理的了

getAttribute(String name)

getAttributeNames()

getClassLoader()

getContext(String uripath)

getContextPath()

getDefaultSessionTrackingModes()

getEffectiveMajorVersion()

getEffectiveMinorVersion()

getEffectiveSessionTrackingModes()

getFilterRegistration(String filterName)

getFilterRegistrations()

getInitParameter(String name)

getInitParameterNames()

getJspConfigDescriptor()

getMajorVersion()

getMimeType(String file)

getMinorVersion()

getNamedDispatcher(String name)

getRealPath(String path)

getRequestDispatcher(String path)

getResource(String path)

getResourceAsStream(String path)

getResourcePaths(String path)

getServerInfo()

getServletContextName()

getServletRegistration(String servletName)

getServletRegistrations()

getSessionCookieConfig()

getVirtualServerName()





0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 微信账号冻结了怎么办 微信被冻结里面的钱怎么办 微信账户冻结了怎么办 微信公众号忘记密码怎么办 网课没有刷完怎么办 形势与政策挂了怎么办 苹果录屏声音小怎么办 老师跟学生家长吵起来了怎么办 蓝幕拍摄抠像有蓝色怎么办 学东西悟性不高怎么办 微商不会写笔记怎么办 布鞋买大了一码怎么办 凉鞋买大了一码怎么办 皮鞋小了一码怎么办妙招 图书馆借的书本损坏了怎么办 把人打伤没钱赔怎么办 小孩不小心打伤了老师怎么办 高考进了三段怎么办 工作中和领导产生冲突怎么办 酒店不给员工发工资怎么办 裙子没有解开超市的锁怎么办 接待老外听不懂他说的怎么办 脚脱皮又痒又臭怎么办 成都应聘平面模特被骗了怎么办 文明6开场一堆蛮族怎么办 幼儿园里出了水痘怎么办 穿高跟鞋脚容易出汗怎么办 粗跟鞋走路太响怎么办 粗跟鞋鞋跟很响怎么办 皮鞋跟走路太响怎么办 穿高跟鞋脚崴了怎么办 高跟鞋小了一码怎么办 高跟皮鞋磨脚怎么办 大同同煤集团三供一业人员怎么办 小孩被猫咪抓了怎么办 长得特别丑的人怎么办 锅巴放的不脆了怎么办 淘宝买到假货了怎么办 单位不给解约函怎么办 安卓个人热点打不开怎么办 密码忘记无法进入主机怎么办