
ServletRequest的getServletContext方法是Servlet30添加的,本地用的是Tomcat90,版本比较高,支持requestgetServletContext()这种写法,而线上是Tomcat60,只支持到Servlet25,需要先用request拿到>
thisgetServletContext()getInitParameter("name");
拿到的就是你的值!因为你在配置文件里写的就是ServletContext()的东西 所以要用它拿!
WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。
ServletConfig对象中维护了ServletContext对象的引用,开发人员在编写servlet时,可以通过ServletConfiggetServletContext方法获得ServletContext对象。
由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为context域对象。
作用
1、可以读取全局配置参数。
2、可以搜索当前工程目录下面的资源文件。
3、可以获取当前工程名字。
用法
1、ServletContext对象获取
thisgetServletContext();
thisgetServletConfig()getServletContext();
2、添加属性:setAttribute(String name, Object obj);
3、得到值:getAttribute(String name),这个方法返回Object
4、删除属性:removeAttribute(String name)
扩展资料
实例
public void doGet(>
PrintWriter out = responsegetWriter();ServletContext servletContext = thisgetServletContext();
ServletContext servletContext2 = thisgetServletConfig()getServletContext(); servletContextsetAttribute("name", "小明");outprintln("将 name=小明 写入了ServletContext");}
注意
存在ServletContext中的数据在服务器中会长时间,就会占用很多内存,因此在使用ServletContext时,最好不要往里面添加过大的数据。
以上就是关于request获取不到getServletContext()方法,求告知。全部的内容,包括:request获取不到getServletContext()方法,求告知。、怎样使用ServletContextListener接口、ServletContext等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)