scope属性决定了JavaBean对象存在的范围。
scope的可选值包括:
---page(默认值)
---request
---session
---application
 
1、page范围内:
客户每次请求访问JSP页面时,都会创建一个JavaBean对象。JavaBean对象的有效范围是客户请求访问的当前JSP网页。JavaBean对象在以下两种情况下都会结束生命期:
---客户请求访问的当前JSP网页通过<forward>标记将请求转发到另一个文件
---客户请求访问的当前JSP页面执行完毕并向客户端发回响应
 
2、request范围内:
客户每次请求访问JSP页面时,都会创建新的JavaBean对象。JavaBean对象的有效范围为:
---客户请求访问的当前JSP网页
---和当前JSP网页共享同一个客户请求的网页,即当前JSP网页中<%@ include>指令以及<forward>标记包含的其他JSP页面
---当所有共享同一个客户请求的JSP页面执行完毕并向客户端发回响应时,JavaBean对象结束生命周期。
 
3、session范围内
javaBean对象被创建后,它存在于整个Session的生存周期内,同一个Session中的JSP文件共享这个JavaBean对象
javaBean对象作为属性保存在HttpSession对象中,属性名为JavaBean的id,属性值为javaBean对象。除了可以通过JavaBean的id直接引用JavaBean对象外,也可以通过HttpSession.getAttribute()方法取得JavaBean对象,例如:
CounterBean obj=(CounterBean)session.getAttribute("myBean");
 
4、application的范围
JavaBean对象被创建后,它存在于整个Web应用的声明周期内,Web应用中的所有JSP文件都能共享同一个JavaBean对象。
JavaBean对象作为属性保存在application对象中,属性名为JavaBean的id,属性值为JavaBean对象,除了可以通过JavaBean的id直接引用JavaBean对象外,也可以通过application.getAttribute()方法取得JavaBean对象,例如:
CounterBean obj=(CounterBean)application.getAttribute("myBean");
 
 
7、在session、application中多次访问同一个页面的时候,(这个页面里面有<jap:useBean:    ……> 生成这个对象)系统通过如下方式进行判断,是否生成对象!
session的<jsp:useBean:>语句生成的代码,application原理类似。
 
注:日期(Date)放在session中的话是不会变的 ,就不会随着时间的变化而变化了。会一直是生成日期这个类那个时候的时间
 
5、PageContext(系统内的对象)的setAttribute()方法
scope属性决定了JavaBean对象存在的范围。
scope的可选值包括:
---page(默认值)
---request
---session
---application
 
1、page范围内:
客户每次请求访问JSP页面时,都会创建一个JavaBean对象。JavaBean对象的有效范围是客户请求访问的当前JSP网页。JavaBean对象在以下两种情况下都会结束生命期:
---客户请求访问的当前JSP网页通过<forward>标记将请求转发到另一个文件
---客户请求访问的当前JSP页面执行完毕并向客户端发回响应
 
2、request范围内:
客户每次请求访问JSP页面时,都会创建新的JavaBean对象。JavaBean对象的有效范围为:
---客户请求访问的当前JSP网页
---和当前JSP网页共享同一个客户请求的网页,即当前JSP网页中<%@ include>指令以及<forward>标记包含的其他JSP页面
---当所有共享同一个客户请求的JSP页面执行完毕并向客户端发回响应时,JavaBean对象结束生命周期。
 
3、session范围内
javaBean对象被创建后,它存在于整个Session的生存周期内,同一个Session中的JSP文件共享这个JavaBean对象
javaBean对象作为属性保存在HttpSession对象中,属性名为JavaBean的id,属性值为javaBean对象。除了可以通过JavaBean的id直接引用JavaBean对象外,也可以通过HttpSession.getAttribute()方法取得JavaBean对象,例如:
CounterBean obj=(CounterBean)session.getAttribute("myBean");
 
4、application的范围
JavaBean对象被创建后,它存在于整个Web应用的声明周期内,Web应用中的所有JSP文件都能共享同一个JavaBean对象。
JavaBean对象作为属性保存在application对象中,属性名为JavaBean的id,属性值为JavaBean对象,除了可以通过JavaBean的id直接引用JavaBean对象外,也可以通过application.getAttribute()方法取得JavaBean对象,例如:
CounterBean obj=(CounterBean)application.getAttribute("myBean");
 
 
7、在session、application中多次访问同一个页面的时候,(这个页面里面有<jap:useBean:    ……> 生成这个对象)系统通过如下方式进行判断,是否生成对象!
session的<jsp:useBean:>语句生成的代码,application原理类似。
 
注:日期(Date)放在session中的话是不会变的 ,就不会随着时间的变化而变化了。会一直是生成日期这个类那个时候的时间
 
5、PageContext(系统内的对象)的setAttribute()方法

JSP中scope属性 scope属性决定了JavaBean对象存在的范围的更多相关文章

  1. jsp中submit的连接属性是什么?

    把注册的按钮改成button:<form action="dologin.jsp" method="post">用户<input type=& ...

  2. JDBC Java 程序从 MySQL 数据库中读取数据,并封装到 Javabean 对象中

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 连接 MySQL 数据库 用于测试的 M ...

  3. 【Head First Servlets and JSP】笔记22:直接从请求到JSP & 获取Person的嵌套属性

    直接从请求到JSP,不经过servlet <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  4. java web学习总结(二十八) -------------------JSP中的JavaBean

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  5. jsp学习--JavaBean定义和在Jsp中使用JavaBean

    一.JavaBean 1.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点:>>这个Java类必须具有一个无参的构造函数>>属性必须私 ...

  6. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  7. JavaBean定义、JSP中使用以及内省操作

        Apache commons 一系列的开源工具室非常值得学习的实现. 一 JavaBean定义     JavaBean是一种可重复使用.且跨平台的软件组件.JavaBean可分为两种:一种是 ...

  8. [原创]java WEB学习笔记36:Java Bean 概述,及在JSP 中的使用,原理

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

  9. Javabean及其在jsp中的应用

    Javabean及其在jsp中的应用 一.Javabean简介 用作JavaBean的类必须具有一个公共的.无参数的构造方法. JavaBean的属性与普通Java类的属性的概念不一样,JavaBea ...

随机推荐

  1. Object-C-NSDictionary

    存储对象都必须是id(对象类型)不能使基础类型 NSDictionary *scores=[[NSDictionary alloc]initWithObjectsAndKeys:@"89&q ...

  2. MySQL数据库----安装

    一.基础部分 1.数据库是什么 之前所学,数据要永久保存,比如用户注册的用户信息,都是保存于文件中,而文件只能存在于某一台机器上. 如果我们不考虑从文件中读取数据的效率问题,并且假设我们的程序所有的组 ...

  3. Sybase 删除表的某列

    Sybase 删除表的某列 Sybase 删除表的某列sql: --想删除字段temp1(该字段的所有值已置为null) alter table nh_bill_detail drop temp1;

  4. python3 清除过滤emoji表情

    python3 清除过滤emoji表情 方法一: emoji处理库,emoji官网:https://pypi.org/project/emoji/ #安装 pip install emoji 官方例子 ...

  5. C++设计模式 之 “状态变化” 模式:State、Memento

    “状态变化”模式 在组件构建过程中,某些对象的状态经常面临变化,如何对这些变化进行有效的管理?同时又维持高层模块的稳定?“状态变化”模式为这一问题提供了一种解决方案. 典型模式 # state # m ...

  6. C++算法原理与实践(面试中的算法和准备过程)

    第0部分 简介 1. 举个例子:面试的时候,可能会出一道算法考试题,比如写一个 strstr 函数——字符串匹配. 可能会想到用KMP算法来解题,但是该算法很复杂,不适宜在面试中使用. 1.1 C++ ...

  7. 【前端】javascript实现鼠标跟随特效

    实现效果: 实现代码: <!DOCTYPE html> <html> <head> <title>鼠标跟随</title> <meta ...

  8. Autotools使用流程【转】

    本文转载自:http://blog.csdn.net/scucj/article/details/6079052 手工写Makefile是一件很有趣的事情,对于比较大型的项目,如果有工具可以代劳,自然 ...

  9. E: could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporary unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is an other process using it

    1. 问题详细提示如下: E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarly unava ...

  10. opencv-python 学习初探2 去图片水印

    我要去除的水印是红色的.网上已经有很不错的帖子,我就不贴自己的代码了.留个指路自己以后查资料. 大概的思路就是用颜色拾取工具,拾取水印颜色,分析了图片,找到规律.比如我的图片水印是红色的,红色差不多g ...