问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

ServletContext的用途

发布网友 发布时间:2022-04-30 16:16

我来回答

2个回答

热心网友 时间:2022-06-27 06:14

安装在一个服务器中的一个特定URL名字空间(比如,/myapplication)下的所有Servlet,JSP,JavaBean等Web部件的集合构成了一个Web的应用,每一个Web应用(同一JVM),容器都会有一个背景对象,而javax.servlet.ServletContext接口就提供了访问这个背景对象的途径。 Servlet实例的getServletContext方法: 得到该Servlet运行其中的这个背景对象。从这个背景对象中你可以访问如下信息或资源:(注意该方法不是ServletContext的方法而是获取背景对象的方法由于HttpServlet继承Servlet的关系GenericServlet类和HttpServlet类同时具有该方法):

· 初始化参数 ServletContext.getInitParameter(String name)。

· 存储在背境中的对象 context.getAttribute(String name)

· 与本背景关联的资源 ServletContext.getResource(String path)

· 日志 ServletContext.log(String msg)

以上所示方法均为ServletContext所提供,值得一提的是对于存储在背境中的对象访问方法常用的还有:

· context.setAttribute(String name, Object object);将特定名字绑定的任意类型的对象上。将把object对象绑定到名字name,存放在Servlet背景中,可供同一背景中的其他Servlet共享。其他Servlet可以通过context.getAttribute(String name),得到一个背景中的对象,或通过context.removeAttribute(String name)在背景中移除一个对象。

· getRequestDispatcher方法:它的作用将一个包含路径的String传递给其它资源。该路径是相对于ServletContext的根路径的。.方法示例:

RequestDispatcher rd = request.getRequestDispatcher("SecondServlet");

rd.forward(request, response);.

该方法主要用于服务器重定向技术上,servlet中重定向的方法主要有两种分别由ServletContext接口和ServletRequest接口提供但二者提供的同名方法getRequestDispatcher却有很大的不同。在ActionRouter类示例中//req.getRequestDispatcher(res.encodeURL(url)).forward(req,res);表示的用ServletRequest接口提供方法进行重定向的。

热心网友 时间:2022-06-27 06:14

ServletContext的用途
安装在一个服务器中的一个特定URL名字空间(比如,/myapplication)下的所有Servlet,JSP,JavaBean等Web部件的集合构成了一个Web的应用,每一个Web应用(同一JVM),容器都会有一个背景对象,而javax.servlet.ServletContext接口就提供了访问这个背景对象的途径。
Servlet实例的getServletContext方法:
得到该Servlet运行其中的这个背景对象。从这个背景对象中你可以访问如下信息或资源:(注意该方法不是ServletContext的方法而是获取背景对象的方法由于HttpServlet继承Servlet的关系GenericServlet类和HttpServlet类同时具有该方法):初始化参数 ServletContext.getInitParameter(String name)。存储在背境中的对象 context.getAttribute(String name) 与本背景关联的资源 ServletContext.getResource(String path) 日志 ServletContext.log(String msg) 以上所示方法均为ServletContext所提供,值得一提的是对于存储在背景中的对象访问方法常用的还有: context.setAttribute(String name, Object object);将特定名字绑定的任意类型的对象上。将把object对象绑定到名字name,存放在Servlet背景中,可供同一背景中的其他Servlet共享。其他Servlet可以通过context.getAttribute(String name),得到一个背景中的对象,或通过context.removeAttribute(String name)在背景中移除一个对象。
在Web应用范围内存取共享数据的方法:

注:web应用范围具有以下两层含义:
(1) 表示有web应用的生命周期构成的时间段.
(2) 表示在web应用的生命周期内所有web组件的集合。
setAttribute(String name,java.lang.Objectobject):把一个java 对象和一个属性名绑定,并存放到ServletContext 中,参数name 指定属性名,参数Object 表示共享数据。
getAttribute(String name):根据参数给定的属性名,返回一个Object类型的对象。
getAttributeNames():返回一个Enumeration 对象,该对象包含了所有存放在ServletContext 中的属性名
removeAttribute(String name) : 根 据 参 数 指 定 的 属 性 名 , 从servletContext 对象中删除匹配的属性。
getRealPath("/"):得到绝对路径
访问web应用的静态资源

使用ServletContext接口可以直接访问web应用中的静态内容文档结构.包括HTML,GIF和JPEG文件。如以下方法:
.getResource
.getResourceAsStream
这两个方法的参数都是以"/"开头的字符串,表示资源相对于context根的相对路径.文档结构可以存在于服务器文件系统,或是war包中,或是在远程服务器上,抑或其他位置.不可以用来获得动态资源,比如,getResource("/index.jsp"),这个方法将返回该jsp文件的源码,而不是动态页面.可以用"Dispatching Requests"获得动态内容.
列出web应用中可被访问的资源,可以使用getResourcePaths(String path)方法。
跨多个请求,用户和Servlets
web服务器支持在一台机器上共享一个IP的多个逻辑主机,这种能力被称为"虚拟主机",每个逻辑主机都拥有它自己的servlet context。servlet context不能跨虚拟主机共享。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
企业培训学到了什么 培训感悟简短 有关培训的感悟 通过培训学到什么 培训你学到了什么 领导问培训学到什么怎么回复 Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 池塘中的鱼和虾是田螺的食物吗,它们是捕食关系吗? Servlet Config 与Servlet context 的作用? ServletContext作用 怎么理解ServletContext,在Servlet访问过程中什么作用 怎样炒麻辣小龙虾和田螺才好吃? 10个样本混合检测什么意思 虾和螃蟹吃螺丝吗? 10合一混采核酸检测结果会不会在穗康码显示? 只要做了核酸检测就会有电子版报告吗? 兰州市十人混检有单人报告吗 混采可以打印报告吗? 做混检可以拿到纸质报告吗 混检不发凭证么 混采手机上有核酸结果吗? 10混1检查没电子版的报告怎么办 十人混采有电子版吗 亲戚带来的小干黄花鱼,用水泡了一上午,怎么煎了还是咸的没法吃,应该怎么做? 黄花鱼本来是咸的吗 黄鱼是淡的还是咸的 csgo进游戏加载条很慢? 微信头像旁两个圈圈两个--是什么 怎么快速排除体内毒素? 手机excel图表怎么显示折线图式子 java ee中 ServletContext 有什么用?这个好像跟httpsession差不多的功能~~ 都起到信息交互作用? 怎么排除身体毒素? excel折线图怎么让数据标签当鼠标移至该点是显示数据,还有特殊折点怎么更改属性(颜色,为了区别) 请问如何排除体内的毒素 在qq群里发起临时会话,非好友,然后对方回的是自动回复,这说明他把我屏蔽了吗? ServletContext是类还是接口啊? javax.servlet.ServletContextEvent这个类的作用是什么?用来处理什么问题?请高手支招! ireport折线图的折点怎么样才能显示数值? ServletContext和PageContext的区别是什么 为何世界各国刑事案件普遍难破,难破难在何处? pageContext和ServletContext(application)的区别,详细点。谢谢了 现在获得销售线索难不难,有哪几种手段? extjs制作折线图,让每个折点显示该数据,怎么弄? 在幻灯片放映时如何播放声音? oppo手机删除微信聊天记录右手按住按住屏幕时会出现绿色的图片还有两个圆圈的? 我培训机构的线索转化很差,有没有好方法能有效的管理线索的工具呢? 一亩地是几米?