JSP的四大域对象:pageContext、request、session、application

这四个域对象,都提供了一对相同的方法:

  • 设置一个属性:
    setAttribute(“属性名”,“属性值”);

  • 获取一个属性:
    getAttribute(“属性名”);

(1)pageContext:

它是四大域对象中域最小的,只能获取本页中set设置的属性。
在A.jsp中设置的属性,只能在A.jsp中使用。

(2)request:

request可以获取到当前页面所set的属性,还可以获取转发页面的属性。
在A.jsp中设置的属性name,在A中可以get到。
再通过request.getRequestDispatcher("B.jsp").forward(request, response);转发到B.jsp,则在A和B中都能get到name。

(3)session:

用户打开浏览器访问,创建session(生命周期开始)。
session超时(默认为30分钟)或被声明失效(关闭浏览器),该对象生命周期结束(一次会话)。
session里的属性,你可在任何网页中设置和调用.

(4)application(又名ServletContext):

web应用加载的时候创建,只要服务器没有关闭,它的属性会一直保存。


Servlet的四个作用域:request、cookie、session、context

这四个对象有不同级别的作用域和生命周期。
(1)request:解决了一次请求内的数据共享问题(作用域:一次请求)

 req.setAttribute("uname", "张三");    // 在servlet中添加request参数

(2)cookie:解决了同一用户不同请求的数据共享的问题(作用域:一次会话/或者设置定时)

 Cookie c = new Cookie("uname", "张三");  // 创建Cookie对象c.setPath("CookieServlet");                  // 指定共享cookie的Servletresp.addCookie(c);                         // 将cookie添加到响应对象中

(3)session:解决了同一用户不同请求的数据共享问题(作用域:会话创建->浏览器关闭)

 // session 技术是依赖 cookie 技术的服务器端的数据存储技术// cookie存储在本地浏览器,而session存储在服务器HttpSession hs=req.getSession();  // 在servlet中获取session对象hs.setAttribute("uname","张三");   // 数据存储

(4)context:解决了不同用户的数据共享问题(作用域:服务器启动->服务器关闭)

 ServletContext sc=this.getServletContext();        // 在servlet中获取context对象sc.setAttribute("str", "ServletContext对象学习");// 数据存储

JSP与Servlet作用域对象的数据传递

以session为例:

Java中存储session

HttpSession hs=req.getSession();    //在Servlet中获取session对象
hs.setAttribute("user", userObj); //将userObj对象存入session中(键值对)

jsp页面获取session

<%=((User)session.getAttribute("user")).getUname()%>

【Servlet】总结 JSP的四大域对象、Servlet的四个作用域:pageContext、request、session、application相关推荐

  1. JSP之四大作用域(pageContext,request,session,application)

    JSP的四大作用域的存储和获取数据的方式一样,差别在于取值的范围不同. 四大域各自作用范围为: pageContext:当前JSP页面有效 request:请求有效 session:会话有效(关闭浏览 ...

  2. jsp中的九大内置对象与四大域对象

    什么是内置对象? 在jsp中已经创建好的对象名,而这些对象无需自己在实例化.通过该对象名可以调用相应的类方法. 九大内置对象 1. out对象---作用:用来输出信息到浏览器.常见的方法: print ...

  3. JSP九大内置对象及其作用+四大域对象

    JSP九大内置对象及其作用+四大域对象 一,什么是内置对象? 在jsp开发中会频繁使用到一些对象,如ServletContext HttpSession PageContext等.如果每次我们在jsp ...

  4. java学习之服务器第26天( --form表单-- 四大域对象--cookie)

    你想要多大的成功, 你愿意为这份成功付出什么? 1.form表单 定义: 相当于一个控件集合,里面包含多个控件,点"提交"后会把表单中的所有控件的值都传给action到的页面: 通 ...

  5. JSP四大域对象与九大内置对象

    域对象的作用:保存数据,获取数据,共享数据. page:jsp页面被执行,生命周期开始,jsp页面执行完毕,生命周期结束(jsp当前页面有效) request:用户发送一个请求,生命周期开始,服务器返 ...

  6. javaweb中四大域对象的生命周期与常用方法

    一.ServletContext 1.生命周期:当Web应用被加载进容器时创建代表整个web应用的ServletContext对象,当服务器关闭或Web应用被移除时,ServletContext对象跟 ...

  7. 观看慕课老师milanlover视频JavaBean+Jsp动作元素+page/request/session/application作用域范围+Model1

    Javabeans类写在src包里. 建一个实体类的po包,建一个用户类. 使用普通方式创建javabean实例: 新建Users.java: package com.po; /*用户类*/ publ ...

  8. jsp九大内置对象和四大域对象

    文章目录

  9. JSP中四大作用域和九大内置对象

    文章目录 九大内置对象 一.out对象 二.request对象 三.response对象 四.config对象 五.session对象 六.application对象 七.page对象 八.pageC ...

最新文章

  1. python xpath语法-Python xpath表达式如何实现数据处理
  2. emeditor利用书签功能导出匹配结果到新文件
  3. tf.matmul()研究【Python】
  4. Using Headless Mode in the Java SE Platform--转
  5. 成功解决pandas.core.indexing.IndexingError: Too many indexers
  6. C++ code:string stream(string流)学习大全
  7. FFmpeg过滤器框架分析
  8. 浅谈c语言中的字符串
  9. BSOJ 2423 -- 【PA2014】Final Zarowki
  10. 信息学奥赛一本通C++语言——1037:计算2的幂
  11. 【kafka】kafka 判断消费组死掉方案 group dead
  12. 网上订单管理-新增、修改
  13. 小技巧:Mac下快速锁屏
  14. js排序算法详解-冒泡排序
  15. 五种基于RGB色彩空间统计的皮肤检测算法
  16. C-Free 5.0注册码分享
  17. matlab中的语言,matlab语言学习MATLAB语言基础.pdf
  18. Spring MVC学习总结(21)——i18n国际化资源配置各个国家语言汇总
  19. 解决高德地图api叠加Imagelayer播放雷达图闪烁
  20. word 2019 深黑色背景如何改成白色(已解决)

热门文章

  1. java的css的块_CSS块宽度不大于前一个块
  2. contentwindow无法搜索对象_面试官:讲一下Jvm中如何判断对象的生死?
  3. 数据挖掘竞赛-美国King County房价预测训练赛
  4. java平均差_如何做好描述统计分析
  5. NEFU709(第K个圆的半径)
  6. 《qss样式表笔记大全(二):可设置样式的窗口部件列表(上)(包含相关示例)》
  7. (九)boost库之文件处理filesystem
  8. \sdk\include\wspiapi.h(47) : error C2265: 'Unknown' : reference to a zero-sized array is illegal 解
  9. 多线程学习(一)----CreateThread
  10. OpenCV 中的绘制功能