servlet中的三个作用域:request、session、ServletContext
- 何为作用域:一个对象存储数据的作用范围。
- 三个作用域的作用范围
- request对象存储数据的作用范围:一次请求(原因:每次请求都会创建新的request对象)。
- session对象存储数据的作用范围:一次会话(原因:每一次不同的会话对应着不同的session对象)。
- servletContext对象数据的作用范围:整个服务(原因:ServletContext对象一个项目只创建一个,tomcat启动就创建,tomcat关闭就销毁,所有客户端公用一个ServletContext对象。一般可用于服务器启动时用监听器监听该对象的创建,在创建时加载一些配置文件,如spring的配置文件就是可以如此)。
- 三个作用域对象基本使用
//向request作用域中存取数据 request.setAttribute("key",value); request.getAttribute("key"); //向session作用域中存储数据 HttpSession session = req.getSession(); session.setAttribute("key",value); session.getAttribute("key"); //向ServletContext对象中存储数据 ServletContext sc = req.getServletContext(); sc.setAttribute("a1", "haha"); sc.getAttribute("a1");