JavaWeb的三大作用域

三大作用域描述

名称 类型 描述
request HttpServletRequest 将数据放在请求作用域中,在一次请求中实现数据的共享,比如请求转发
session HttpSession 将数据放在当前的会话作用域中,只要浏览器不关闭,都能共享
application ServletContext 将数据放在当前应用作用域中,应用在服务器启动的时候创建,关闭的时候销毁
    三种作用域的测试都用到两个Servlet,即Aservlet和Bservlet。Aservlet是设置共享数据,Bservlet是接受共享数据,并且将接收到的数据反馈给浏览器。初次获得共享数据的默认值为-1。在此获取会做+1操作。

request作用域

    测试代码如下图所示

    测试结果如下图所示

问题与分析

1.问什么反馈给浏览器的数值始终为-1
   因为每次request将数据放在请求作用域中每次刷新浏览器都是一个新的请求,所以每次都返回默认值-1。

session作用域

    测试代码如下图所示

    测试结果如下图所示

初次启动浏览器

浏览器刷新

问题与分析

1.为什么会话接受的数据会变
   因为每次session将数据放在会话作用域中,它的作用域起始时间为浏览器开始,到浏览器结束才失效。所以每次会加1。

application作用域

    测试代码如下图所示

    测试结果如下图所示

初次启动并刷新浏览器

换浏览器访问后

问题与分析

1.为什么换浏览器后还能接受数据并进行+1操作
   因为每次application将数据放在应用作用域中,它的作用域起始时间为Tomact服务器开始,到服务器关闭才失效,不会因为浏览器的更换而结束,所以每次会加1。

posted @ 2020-07-29 14:35  TelSunny  阅读(300)  评论(0编辑  收藏  举报