作用域范围:request<session<application
1.request是服务端接收到请求就会建立一个request对象,所以它的作用域是当前请求,对应接口是:javax.servlet.http.HttpServletRequest
方法:request.setAttribute(String name,Object obj);request.getAttribute(String name);request.removeAttribute(String name);request.getParameter(String name);
2.session是服务器对每次会话创建的对象,保存在服务端,当浏览器关闭,session超时会自动摧毁。(服务端创建session时,会随机创建sessionid通过cookie传给客户端以便下次验证)常用于web开发登录验证,对用接口:javax.servlet.http.HttpSession
方法:session.setAttribute(String name,Object obj);session.getAttribute(String name);session.removeAttribute(String name);session.getId();session.isNew();session.invalidate()当前session失效,释放资源;session.setMaxInactiveInterval(int i);
3.application存在于服务器端,应用程序所有用户都可以使用,一个应用程序就只创建一个ServletContext对象,所有用户共用一个servletContext对象(用于网站访问次数),对应接口:javax.servlet.ServletContext
获取application:ServletContext application=this.getServletContext();
参考:https://www.cnblogs.com/z0228-0322x/p/6170588.html