zoukankan      html  css  js  c++  java
  • DRP-Web开发的四个范围

       最近再看DRP,王勇讲到关于web开发的四个范围,查阅资料,加上自己的感受和大家分享一下,对比从前学过的ASP.NET视频也是有相似之处!

    一.简单介绍:

         page(jsp有效)  request(一次请求) session(一次会话)application(当前web应用)page域指的是pageContext.; request域指的是requestHttpServletRequest;session 域指的是 sessionHTTPSession;application 域指的是 applicationServletContext
        之所以他们是域对象,原因就是他们都内置了map集合,都有setAttribute getAttribute方法。他们都有自己固定的生命周期和作用域。这四个对象的生命周期(生命周期就是值对象的创建到销毁的期间):
       四个域对象的声明周期:
          page:jsp页面被执行,生命周期开始,jsp页面执行完毕,声明周期结束。
          request:用户发送一个请求,开始,服务器返回响应,请求结束,生命周期结束。
          session:用户打开浏览器访问,创建session(开始),session超时或被声明失效,该对象生命周期结束。

          application:web应用加载的时候创建。Web应用被移除或服务器关闭,对象销毁。[结束]。

     二.注意:

       Page只在当前jsp有效,每次请求分别对应不同的request;Request只在当前请求有效,每次请求分别对应不同的request域;Session只在一次会话中有效,会话结束就无法取到数据了;四个域对象在选择的时候,能用范围小的绝不用范围大的:page:数据只是暂时存在集合,在jsp页面的其他地方要用,用page(页面中自定义的map)。
     
        Request:数据只是做显示的,看完了就没用了。就存request域,请求转发,Servlet产生的处理结果(数据)交给jsp显示,数据转发可以带数据。
     
       Session:数据给用户看完了,一定还要用,会话结束了就没用了。
       用户登录,用户信息发给客户端看,看完了,一会访问别的页面还要看用户信息。
       购物车,购物车成功了,给用户看购物车,待会随时间可以查看购物车。
       请求重定向,因为是两次请求,每一次请求的数据,第二次请求还要看。
     
       application:数据给一个用户用完了,别人还要用。
       聊天室,聊天记录,需要给所有的用户看。
       统计网站在线人数,所有看到的应该是一个数。
    三.总结:
        四个域对象在选择的时候,能用范围小的绝不用范围大的。需要定义Map时不如用page,请求Servlet,转发给jsp的数据存request,请求重定向带过去的数据存Session,全局的数据存application.DRP视频是我见过最详细而且王勇老师的认真程度深深的感染了自己。
  • 相关阅读:
    小程序云开发 -- 云函数定时触发器配置
    小程序echarts 构建中国地图并锚定区域点击事件
    微信小程序接入百度OCR(身份证识别)
    微信小程序开发技巧总结(三)-- 云开发时效数据刷新和存储 (access_token等)
    微信小程序仿朋友圈功能开发(发布、点赞、评论等功能)
    微信小程序开发技巧总结(二) -- 文件的选取、移动、上传和下载
    SpringBoot Jpa 自定义查询
    SpringBoot Jpa 分页查询最新配置方式
    【软工】提问回顾与个人总结
    【软工】[技术博客] 用Monaco Editor打造接近vscode体验的浏览器IDE
  • 原文地址:https://www.cnblogs.com/xzpblog/p/5117943.html
Copyright © 2011-2022 走看看