在进行网络编程中的项目时 经常用到的域对象主要包括以下三种:

1、 ServletContext  作用范围比较大

代码如下:

//一个请求代码:
ServletContext sc = request.getServletContext();
sc.setAttribute("name", "一个请求的共享资源在另一个请求中可以直接访问.可以多个请求之间共享资源");
//另一个请求代码:
ServletContext sc = request.getServletContext();
String ss = (String) sc.getAttribute("name");
System.out.println(ss);

 2、request  作用范围只限于一次请求  多个请求之间共享资源需要做请求转发操作

代码如下:

request.setAttribute("name", "鸡腿好吃");
//直接共享数据是不行的 我们需要做请求转发 才能共享会话数据 //创建转发器对象
RequestDispatcher rd = request.getRequestDispatcher("qu");
rd.forward(request, response);
//另外一个请求
//获取共享数据
String name = (String) request.getAttribute("name");

 3、httpsession 作用范围 一次会话   (一次会话可以有多个请求)    当浏览器关闭会话结束

//一个请求
HttpSession hs = request.getSession();
String sid = hs.getId();
response.getWriter().write("<a href='g'>这是一个sessionid</a>");
System.out.println(sid);
//另一个请求
HttpSession hs = request.getSession();
String sId = hs.getId();
System.out.println(sId);
//最后结果返回的都是同一个sessionId 它们之间共享sessionId

 4、HttpSession的生命周期

1、request.getSession();就被创建
2、活着 只要没有超过session的最大超时时间  也没有调用invalidate 方法该session对象都是活着的
3、死亡:当超过session的最大超时时间及调用了invalidate 方法 该session对象就死亡

总结:作用域范围图:

java servlet的域对象的更多相关文章

  1. Servlet三大域对象

    Servlet三大域对象的应用 request.session.application(ServletContext) ServletContext是一个全局的储存信息的空间,服务器开始就存在,服务器 ...

  2. 妙解Servlet四大域对象

    pageContext pageContext作用域为page(页面执行期). request request是表示一个请求,只要发出一个请求就会创建一个request,它的作用域仅在当前请求中有效. ...

  3. java web jsp学习笔记--概述-常用语法,指令,动作元素,隐式对象,域对象

     JSP学习笔记 1.什么是jsp JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP/Servlet规范.JS ...

  4. jsp九个内置对象、四个域对象及Servlet的三大域对象

    一,什么是内置对象? 在jsp开发中会频繁使用到一些对象,如ServletContext HttpSession PageContext等.如果每次我们在jsp页面中需要使用这些对象都要自己亲自动手创 ...

  5. [Servlet]研究ServletContext对象

    作者信息 作者姓名:金云龙 个人站点:http://www.longestory.com 个人公众帐号:搜索"longestory"或"龙哥有话说" Servl ...

  6. ServletContext对象--三大域对象

    Servlet三大域对象的应用 request.session.application(ServletContext) ServletContext是一个全局的储存信息的空间,服务器开始就存在,服务器 ...

  7. [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  8. JAVA四大域对象总结

    根据有作用范围由小到大: page(jsp有效)------>page域指的是pageContext. request(一次请求)--->request域request HttpServl ...

  9. [原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

随机推荐

  1. 机器学习KNN算法

    KNN(最邻近规则分类K-Nearest-Neighibor)KNN算法 1. 综述      1.1 Cover和Hart在1968年提出了最初的邻近算法      1.2 分类(classific ...

  2. GWAS后续分析:多基因风险评分(Polygenic Risk Score)的计算

    一.什么是多基因风险评分 传统的GWAS研究只计算单个SNP位点与表型之间的关联性,再用Bonferroni校正,通过给定的阈值,筛选出显著的SNP位点. 这样会存在两个问题,第一.Bonferron ...

  3. BootstrapTable-加载数据

    要加载的数据:https://examples.wenzhixin.net.cn/examples/bootstrap_table/data?search=&order=asc&off ...

  4. vue md5

    安装 cnpm install js-md5 --save 使用 import md5 from 'js-md5' md5('要加密的内容')

  5. 077、跨主机使用Rex-Ray volume (2019-04-24 周三)

    参考https://www.cnblogs.com/CloudMan6/p/7630205.html   上一节我们在docker1上创建mysql容器,并使用了 Rex-Ray volume mys ...

  6. 基于jeesite的cms系统(三):使用RESTful API在前端渲染数据

    使用RESTful API可以更好的开发前后分离的应用,后面一节会介绍使用模版引擎Beetl开发后端渲染的应用. 一.配置Swagger(Api 接口文档) 1.使用系统自带 拷贝jeesite-mo ...

  7. Python——合并指定文件夹下的所有excel文件

    前提:该文件夹下所有文件有表头且具有相同的表头. import glob # 同下 from numpy import * #请提前在CMD下安装完毕,pip install numppy impor ...

  8. 使用antd Table + mobx 处理数组 出现的一系列问题

    在store中定义了一个数组: @observable list = [...] 若是在table组件中直接使用list: <Table className={styles.table} col ...

  9. git应用

    安装 Git for windows git config --global user.name "zhangyue" git config --global user.mail ...

  10. 内核模块加载错误 “Invalid module format” 解决办法

    参考链接:  http://blog.chinaunix.net/uid-20448327-id-172345.html