1.为什么需要servletContext

   需求1
需求2
---------------》解决之道servletContext
 
 
servletContext
1.ServletContext是在服务器
2.ServletContext是被所有客户端共享
3.ServletContext是当web应用启动的时候,自动创建
4.ServletContext当web应用关闭  ,tomcat关闭,对web应用reload造成ServletContext的消亡
 
 
ServletContext小结
 
获取属性
//1.通过this直接获取。
 ServletContext servletcontext=this.getServletContext();
   //2.通过ServletConfig获取
ServletContext servletcontext2=this.getServletConfig().getServletContext();
 

添加属性

servletcontext.setAttribute("属性名name", "val韩顺平");  
 
取出属性
String val=(String)servletcontext.getAttribute("属性名name");  
 
删除
servletcontext.removeAttribute("属性名name");  
 
ServletContext应用
(1)获取WEB应用的初始化参数
  <!--如果希望所有的servlet都可以访问该配置-->
   <context-param>
          <param-name>name</param-name>
          <param-value>nscott</param-value>
  </context-param>
如何获取
String val=(String)this.getServletContext().getInitParameter("name");  
 
(2)转发
  response.sendRedirect("/web应用名/资源");
  request.getRequestDispatcher("/资源名").forward(request,response);
区别1.getRequestDispatcher发生在web服务器,sendRedirect发生在浏览器
       2.如果  request.setAttribute("name","shunping")希望下一个页面可以使用该值使用  request.getRequestDispatcher("/资源名").forward(request,response);
       3.如果  session.setAttribute("name","shunping")希望下一个页面,两个方法都能使用
               建议使用  request.getRequestDispatcher("/资源名").forward(request,response);
      4.如果希望跳转到本web应用以外的url ,只能使用 response.sendRedirect
this.getServletContext().getRequestDispatcher("/资源名").forward(request,response);
(3)读取文件和获取文件的全路径
1.为什么需要servletContext

   需求1
需求2
---------------》解决之道servletContext
 
 
servletContext
1.ServletContext是在服务器
2.ServletContext是被所有客户端共享
3.ServletContext是当web应用启动的时候,自动创建
4.ServletContext当web应用关闭  ,tomcat关闭,对web应用reload造成ServletContext的消亡
 
 
ServletContext小结
 
获取属性
//1.通过this直接获取。
 ServletContext servletcontext=this.getServletContext();
   //2.通过ServletConfig获取
ServletContext servletcontext2=this.getServletConfig().getServletContext();
 

添加属性

servletcontext.setAttribute("属性名name", "val韩顺平");  
 
取出属性
String val=(String)servletcontext.getAttribute("属性名name");  
 
删除
servletcontext.removeAttribute("属性名name");  
 
ServletContext应用
(1)获取WEB应用的初始化参数
  <!--如果希望所有的servlet都可以访问该配置-->
   <context-param>
          <param-name>name</param-name>
          <param-value>nscott</param-value>
  </context-param>
如何获取
String val=(String)this.getServletContext().getInitParameter("name");  
 
(2)转发
  response.sendRedirect("/web应用名/资源");
  request.getRequestDispatcher("/资源名").forward(request,response);
区别1.getRequestDispatcher发生在web服务器,sendRedirect发生在浏览器
       2.如果  request.setAttribute("name","shunping")希望下一个页面可以使用该值使用  request.getRequestDispatcher("/资源名").forward(request,response);
       3.如果  session.setAttribute("name","shunping")希望下一个页面,两个方法都能使用
               建议使用  request.getRequestDispatcher("/资源名").forward(request,response);
      4.如果希望跳转到本web应用以外的url ,只能使用 response.sendRedirect
this.getServletContext().getRequestDispatcher("/资源名").forward(request,response);
(3)读取文件和获取文件的全路径

 
 
 
 
 
 

ServletContext的更多相关文章

  1. JavaWeb——ServletContext

    一.基本概念 说起ServletContext,一些人会产生误解,以为一个servlet对应一个ServletContext.其实不是这样的,事实是一个web应用对应一个ServletContext, ...

  2. The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory

    The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory 这是由于项目里面的一些 ...

  3. 【原】tomcat 7 启动报错:java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()Ljavax/servlet/SessionCookieConfig的解决

    现象: tomcat 7 启动报错:java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig() ...

  4. 如何获得Webapp的根项目路径 即ServletContext.getRealPath() 的输入参数要以"/"开头

    ServletContext.getRealPath() 的输入参数要以"/"开头 2014-03-26 15:54 5738人阅读 评论(1) 收藏 举报 版权声明:本文为博主原 ...

  5. 重温Servlet学习笔记--servletContext对象

    一个项目中只有一个ServletContext对象,我们可以在多个servlet中获取这个唯一的对象,使用它可以给多个servlet传递数据,我们通常成servletContext为上下文对象.这个对 ...

  6. Servlet 之 ServletContext

    package cn.jiemoxiaodi.servlet_servletcontext; import java.io.IOException; import java.io.PrintWrite ...

  7. Tomcat启动后,从spring容器中获取Bean和ServletContext

    public static Object getBean(String beanName){ ApplicationContext context = ContextLoader.getCurrent ...

  8. The method getJspApplicationContext(ServletContext) is undefined for the type

    type Exception report message Unable to compile class for JSP: description The server encountered an ...

  9. tomcat7 启动项目报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()

    JDK版本:jdk1.8.0_77 Tomcat 版本:apache-tomcat-7.0.47 异常重现步骤: 1.完成项目部署 2.启动Tomcat 异常头部信息:java.lang.NoSuch ...

  10. Spring以及SPringmvc相关问题: ServletContext -父子容器

    总结如下: 明确了Servlet规范中ServletContext的作用和意义.此外明确一个Tomcat中多个web应用,每个人web应用有唯一的一个ServletContext(全局上下文).[例子 ...

随机推荐

  1. Android NDK开发

    Android NDK 开发教程(极客学院) 一.Android NDK环境搭建 使用最新ndk,直接抛弃cygwin,以前做Android的项目要用到NDK就必须要下载NDK,下载安装Cygwin( ...

  2. WordPress翻译中 __()、_e()、_x、_ex 和 _n 的用法及区别

    编译函数 WordPress使用了下面几个函数来方便语言本地化. __() _e() _x() _ex() _n() 以上所列的函数是用来包含所需翻译的字符串的,根据字符串的不同参数和输出类型,需要使 ...

  3. JAVA中AJAX的使用

    AJAX<%@ page language="java" import="java.util.*" pageEncoding="UTF-8&qu ...

  4. Quality trimming using Trimmomatic

    java -jar /home/liuhui/bin/trinityrnaseq_r20140413p1/trinity-plugins/Trimmomatic/trimmomatic.jar PE ...

  5. Perl 的面向对象编程

    转自 http://net.pku.edu.cn/~yhf/tutorial/perl/perl_13.html 拓展阅读 http://bbs.chinaunix.net/forum.php?mod ...

  6. 使用oracle utl_http包需要注意的事项

    总结下几次使用utl_http包遇到的几个问题 关于utl_http包功能还是很强大的 可以通过他来捕捉网站页面的内容 或者调用一个url的接口完成某项功能 Eg: declare   req  UT ...

  7. 【BZOJ-4668】冷战 并查集 + 按秩合并 + 乱搞

    4668: 冷战 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 37  Solved: 24[Submit][Status][Discuss] Des ...

  8. Input path does not exist: file:/.......

    注意看是file不存在并不是hdfs,好奇怪,突然明白应该是路径不对,必须加上hdfs://hostname:port/file. 我为什么饭这样的错误是因为前一阵谢了HDFS的曹组,谢了全局File ...

  9. Servlet与JSP版本历史以及Tomcat支持的版本

    查询这个的关键字:Java EE的版本历史. JavaServer Pages (JSP) Java Servlet 参考: https://en.wikipedia.org/wiki/Java_EE ...

  10. hdu 4403 dfs

    巨麻烦的模拟题orz.... 先确定等号的位置,然后两层dfs,分别算等号前面的和后面的,再比较 话说这题竟然不开long long都能水过 #include <iostream> #in ...