介绍:

三大作用域对象就是Servlet支持存储数据的三大对象。
分别是HttpServletRequestHttpSessionServletContext(application)

request(请求作用域)

表示一个请求,只要发出一个请求就会创建一个request。
每一次请求都创建一个对象,仅在当前请求中有效
常用于服务器间同一请求不同页面之间的参数传递。常用于表单的控件值传递。
常用方法:
request.setAttribute();
request.getAttribute();
request.removeAttribute();
request.getParameter().

Session(会话作用域)

服务器会为每个会话创建一个session对象,所以session中的数据可供当前会话中所有Servlet共享。session是一次会话,服务器会为每一个会话创建一个session对象,session中的数据可以被本次会话中的所有servlet访问,会话是从浏览器打开开始,到关闭浏览器结束

用户打开浏览器会话开始,直到关闭浏览器会话才结束。一次会话期间只会创建一个session对象。

session常用于登录验证,登录成功后浏览器会为其分配一个session键值对,之后的访问权限判断键值对就可以了。
例如下面这种形式

request.getSession().setAttribute("user",user);

常用方法
session.setAttribute();
session.getAttribute();
session.removeAttribute();
session对象的创建,在servlet中使用
HttpSession session = request.getSession();
的方式来创建
由于session属于jsp九大内置对象之一,当然可以直接使用。例如:

<%session.setAttribute("name","name")%>

session是服务器对象,保存在服务器端。并且服务器可以将创建session后产生的sessionId通过一个cookie返回给客户端,方便下次验证。

ServletContext(application)(上下文作用域)

针对同一个web项目,里面的所有Servlet共享application作用域,一般不用于存放信息而用于获取根目录下的所有资源,类似一个web全局对象,属于ServletContext。所有的用户都可以取得这个信息,此信息在整个服务器中被保留。application属性范围值,只要设置一次,则所有的网页窗口都可以取得数据。
ServletContext在服务器启动时创建,在服务器关闭时销毁,一个javaweb应用只能创建一个ServletContext对象。所有客户端在访问服务器时共享同一个ServletContext对象。
获取application对象
ServletContext app = this.getServletContext();

app01.setAttribute(“name”, “kaixuan”); //设置一个值进去

ServletContext app = this.getServletContext();

app02.getAttribute(“name”); //获取键值对

使用方法(主要应用场景):

(1) request:跟当前操作功能相关(用于存储一次性数据,将数据设置给页面显示)

(2) session: 跟用户信息相关(常用来设置用户信息)

(3) application:跟项目全局信息相关(常用来设置统计网站浏览、访问量、全局使用的参数变量)
注意能用小的尽量用小的(如果能使用request作用域就使用request作用域,如果request作用域用不了,则使用session作用域。会话级别的数据要是用session作用域,比如说登录信息,银行账号,如果数据是系统级别的,那么使用application作用域)

java--servlet中三大作用域对象相关推荐

  1. Web之间跳转和信息共享、Servlet的三大作用域对象、动态网页JSP

    一:Web之间跳转和信息共享 01.为什么需要Servlet之间的交互 Web组件(Servlet/JSP)的交互:Web组件之间的跳转,数据共享.为什么Web组件之间需要跳转,需要数据共享.![we ...

  2. JSP九大内置对象和四大作用域和Servlet的三大作用域对象

    一.JSP九大内置对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 内置对象特点: 由JSP规范提供,不用编写者实例化. 通过Web容器实现和管理 所有 ...

  3. Servlet中三大域对象详解----[笔记]

    刚学javaWeb时对一些信息的获取有一些不懂,请求行获取的信息和请求域获取的信息有什么不一样的?除了方法不一样-但是搞清楚了原理,一切迎刃而解;如果你也有疑惑,那就看看这篇文章吧! 请求行与请求域 ...

  4. java简述会话对象的生命周期_简述Java Web三大作用域对象

    Java Web三大作用域对象 这三个对象的作用域和生命周期--从上往下依次递增: 上面最小,下面最大. 1.HttpServletRequest--请求对象 HttpServletRequest是生 ...

  5. SpringMVC中使用作用域对象完成数据的流转

    文章目录 SpringMVC中使用作用域对象完成数据的流转 [1] 作用域对象复习 [2] SpringMVC中使用作用域对象流转数据 [3] SpringMVC的Model对象的使用 SpringM ...

  6. Java Servlet 中的 ServletConfig 和 ServletContext 之间的区别

    ServletConfig 和 ServletContext 是 Java Servlet 中的两个重要接口,它们都是用来存储 servlet 的配置信息的. ServletConfig 是针对单个 ...

  7. Servlet中的response对象

    目录 目录 前言 简介 向客户端输出数据 response对象的getOutputStream方法 response对象的getWriter方法 实现文件下载 生成图片验证码 实现浏览器定时刷新 控制 ...

  8. java serlet清空cookie_如何删除Java Servlet中的Cookie

    如何删除Java servlet中的cookie? 编辑:以下现在工作成功,似乎是以下的组合: response.setContentType("text/html"); 和 co ...

  9. Java Servlet中Filter过滤器的原理以及使用方式

    详细介绍了Java Web Servlet中的Filter过滤器的原理以及常见用法. 文章目录 1 Filter接口 1.1 过滤器的生命周期 1.2 doFilter过滤方法 2 Filter的使用 ...

最新文章

  1. FineReport搭建物流报表平台的解决方案
  2. Cisco Wireless Controller 5508 Configuration Step by Step – Part 1 (CLI and GUI Access, Upgrade)
  3. 偏函数 匿名函数 高阶函数 map filter reduce
  4. Qt学习笔记-Qt5程序开机自启动(windows)
  5. 移动平均滤波器 matlab,移动平均滤波的原理---matlab函数的实现smooth
  6. Saur家的官方语言
  7. 《高性能MySQL》 第1章 MySQL架构与历史
  8. 编译原理算符分析器实现 -* c语言代码,编译原理论文-词法分析器的设计与实现...
  9. 如何将文件快速拷入自己的谷歌云盘
  10. 用C语言打印1到100的罗马数字
  11. 何时是使用代码报表的最佳方法,何时采用frx格式
  12. 使用pkg编译打包nodejs程序成执行文件
  13. Docker个人理解与初级使用
  14. 什么是桌面虚拟化,实施桌面虚拟化有什么好处?
  15. 乌衣巷的由来是什么?
  16. 加速人生来帮忙,系统顺畅又洁净!
  17. Idea 使用git插件从git仓库下载project图文并茂,详细解答
  18. python——pickle模块的使用
  19. 快速理解简单的短链接生成原理
  20. 组件分享之前端组件——用于自定义表单的前端组件form-create

热门文章

  1. 链路追踪google dapper论文 中文
  2. java(jsp技术)
  3. 联想拯救者7000充不上电的解决办法
  4. 卷积、池化、激励函数的顺序
  5. librosa@soundFile音频读取和绘图@声道@通道@包络
  6. 不要做一个只会抱怨的人
  7. exe文件在服务器上打不开,EXE格式文件打不开怎么办?三个方法教你打开
  8. [Linux]线程概念_线程控制(线程与进程的区别与联系 | 线程创建 | 线程等待 | 线程终止 | 线程分离 | LWP)
  9. python携程酒店评论_python爬取携程景点评论信息
  10. Android仿微信底部菜单栏+顶部菜单栏(附源码)