• ADF_ManagedBean的概念和管理(概念)


    20150623 Created By BaoXinjian

    一、摘要


    ManagedBean基本概念

     

    二、ManagedBean Scope概念


    主要说明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

     

    三、ManagedBean Scope解析


    下面将针对每种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

  • 相关阅读:
    编译和安装在Windows上橡胶树 (Compiling and Installing Yate on Windows)
    Microsoft Sync Framework 2.1 可再发行程序包 Microsoft Sync Framework 1.0 SP1
    Kwickserver
    .net平台 基于 XMPP协议的即时消息服务端简单实现
    开源jabber(XMPP)架设内部即时通讯服务的解决方案
    www.mentalis.org/
    VM虚拟机ping不通局域网其他主机的解决办法
    VM Workstation的Unity Mode有什么用
    Office WORD EXCEL批量查找和替换技巧实例
    Visual Studio VS如何拷贝一个项目的窗体文件到另一个项目
  • 原文地址:https://www.cnblogs.com/eastsea/p/4594004.html
Copyright © 2020-2023  润新知