20150623 Created By BaoXinjian


ManagedBean基本概念


主要说明ADF的ManagedBean中的不同Scope。

由于ADF Controller是在JSF的基础上扩展而来的,因此,在ADF中,在包含了JSF的三种Scope的基础上,又扩展出了另外三种Scope,使ADF Controller在实际应用中更为灵活和方便。

1. JSF标准Scope

(1). applicationScope

(2). sessionScope

(3). requestScope

2. ADF Controller扩展Scope

(1). pageFlowScope

(2). backingBeanScope

(3). viewScope


下面将针对每种Scope进行详细说明,以作用域由大到小排列。

1. applicationScope

就从字面意思就可以看出,applicationScope是作用范围最广的,在作用于整个应用的运行周期内。

通常情况 下,applicationScope中的参数等都是在应用启动(web server启动)时即被初始化。

因此,一般对于独立于特定的职责和角色的,且需要在整个应用的周期内都需要的资源会定义在 applicationScope的ManagedBean中。

2. sessionScope

仅次于 applicationScope的是sessionScope,sessionScope作用于从用户登录开始到用户主动结束该session,

一般来 说,都会为session设置超时时间,若超过服务器设置的超时时间的话,则该session被自动释放。

在实际的应用中,经常会将类似于用户信息,预置 文件信息或授权信息等设置到session中。

3. requestScope

requestScope的作用周期是在一次request之内,

只要是在同一个request内,即使是在不同的页面也可以访问到作用在requestScope的内容。

4. pageFlowScope

在 ADF中引入了Task-Flow的概念,
pageFlowScope作用于同一个Task Flow中,

例:分别有A/B/C三个页面,同属于一个Task
Flow,D页面不属于该Task Flow,

且A/B/C三个页面可以通过定义的action相互进行导航,同时也可以从这三个页面导航到D页面,建立pageFlowScope的Managed Bean此时,A/B/C三个页面可以同时访问到该Managed
Bean中的属性。

5. viewScope

viewScope是指view id发生更改之前都可用,即作用于同一页面内,

例如,在不同页面之间跳转时,viewScope的Managed
Bean中的数据都会丢失。

6. backingBeanScope

backingBeanScope 多用于page fragments和declarative
components,由于同一个页面中可能会拥有多个page fragments或declarative
components,

因此,为了避免相互之间数据冲突,可以考虑使用backingBeanScope的Managed Bean。

7. none

none的意思是说,即使在同一个页面,也不能访问到彼此none scope的Managed
Bean中的属性。

8. 下面是上述六种Scope的生命周期示意图:

Thanks and Regards

ADF_ManagedBean的概念和管理(概念)的更多相关文章

  1. Linux磁盘概念及其管理工具fdisk

    Linux磁盘概念及其管理工具fdisk [日期:2016-08-27] 来源:Linux社区  作者:chawan [字体:大 中 小]   引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘 ...

  2. CEPH-5:ceph集群基本概念与管理

    ceph集群基本概念与管理 ceph集群基本概念 ceph集群整体结构图 名称 作用 osd 全称Object Storage Device,主要功能是存储数据.复制数据.平衡数据.恢复数据等.每个O ...

  3. linux 时间管理——概念、注意点(一)【转】

    转自:http://www.cnblogs.com/openix/p/3324243.html 参考:1.http://bbs.eyeler.com/thread-69-1-1.html        ...

  4. LVM基本概念、管理

    一.传统磁盘管理的问题 当分区大小不够用时无法扩展其大小,只能通过添加磁盘.创建新的分区来扩充空间,但是新添加进来的硬盘是作为独立文件系统存在的,原有的文件系统并未得到扩充,上层应用很多时候只能访问一 ...

  5. Java面向对象_继承——基本概念以及管理化妆品实例分析

    一.继承的基本概念: 1.继承是面向对象三大特征之一 2.被继承的类成为父类(超类),继承父类的类成为子类(派生类) 3.继承是指一个对象直接使用另一个对象的属性和方法 4.通过继承可以实现代码重用 ...

  6. 4. docker镜像的概念、管理(查看、下载、删除)

    镜像的概念 镜像是一个包含程序运行必要依赖环境和代码的只读文件,它采用分层的文件系统,将每一次改变以读写层的形式增加到原来的只读文件上.镜像是容器运行的基石. 下图展示的是Docker镜像的系统结构. ...

  7. SAP iDoc 概念及管理

    创建IDOC:   第一步:WE31 创建IDOC所包含的字段.   第二步:WE30 创建IDOC 把Segment分配给IDOC   第三步:WE81  创建信息类型   第四步:WE82   把 ...

  8. 01_Weblogic课程之概念篇:代理服务器,web服务器,应用程序服务器,JNDI概念,JTA概念,Java消息服务,Java验证和授权(JAAS),Java管理扩展,Web客户机,客户机应用程序

     1 什么是服务器 Weblogic中服务器分为两种,一种是受管服务器,另外一种是管理服务器. Weblogic课程(Weblogic是Oracle公司的,最开始的是BEA公司的) 一 系统管理 ...

  9. Python概念-上下文管理协议中的__enter__和__exit__

    所谓上下文管理协议,就是咱们打开文件时常用的一种方法:with __enter__(self):当with开始运行的时候触发此方法的运行 __exit__(self, exc_type, exc_va ...

随机推荐

  1. MVC——入门+简单的小实例

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controler)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法. ...

  2. iOS开发UI篇—从代码的逐步优化看MVC

    iOS开发UI篇—从代码的逐步优化看MVC 一.要求 要求完成下面一个小的应用程序. 二.一步步对代码进行优化 注意:在开发过程中,优化的过程是一步一步进行的.(如果一个人要吃五个包子才能吃饱,那么他 ...

  3. 转: javascript实现全国城市三级联动菜单代码

    <html> <head> <title>js全国城市三级联动菜单代码_B5教程网</title> <meta http-equiv=" ...

  4. Linux定时器相关源码分析

    Linux的定时器使用时间轮算法.数据结构不难理解,核心数据结构与散列表及其相似,甚至可以说,就是散列表.事实上,理解其散列表的本质,有助于对相关操作的理解. 数据结构 这里先列出一些宏,稍后解释: ...

  5. 谈谈UIView的几个layout方法

    谈谈UIView的几个layout方法-layoutSubviews.layoutIfNeeded.setNeedsLayout...   最近在学习swift做动画,用到constraint的动画, ...

  6. 2014年3月份第4周51Aspx源码发布详情

    足购库存管理系统源码  2014-3-24 [VS2010]功能介绍:这是为一个卖鞋子的朋友设计的,本来要用SQL数据库的,可是他说他不想安装,怕拖电脑速度,没办法,用了Access,在数据同步上和S ...

  7. IIS 工作原理之非托管代码旅程(一)

    IIS6改变 IIS6可以为每个不同的虚拟目录创建不同的程序池,这样缩小了IIS的Application Pool的颗粒度,不同的虚拟目录之间是互不影响的. IIS6(和IIS7经典模式)与IIS7集 ...

  8. cocos2dx 3.8版关于#include "GB2ShapeCache-x.h"

    关于coco2d-x 3.8版的PhysicsEditor.exe1.09版的GB2ShapeCache-x.h.cpp中有些方法更新了和容器的使用方法,还有就是头文件include "CC ...

  9. html table动态合并单元格 js方法

    <script> $(document).ready(function(){ function mc(tableId, startRow, endRow, col) { var tb = ...

  10. 利用中文数据跑Google开源项目word2vec

    一直听说word2vec在处理词与词的相似度的问题上效果十分好,最近自己也上手跑了跑Google开源的代码(https://code.google.com/p/word2vec/). 1.语料 首先准 ...