【问题标题】:Backing Beans - which of them should be scoped?Backing Beans - 其中哪些应该是作用域?
【发布时间】:2011-06-30 05:59:08
【问题描述】:

我的 JSF 应用程序中有两种支持 bean:

  • 托管 Bean (@ManagedBean(name="bean"))
  • 实体 Bean (@Entity)

应该对它们中的哪些进行限定(请求/会话/视图/应用程序/否)?

我现在将所有 托管 bean 范围化和 实体 bean 没有(过去我也有实体 bean 范围,它似乎与没有范围)。此外,“不”可能意味着实体 bean 是请求范围的。

谢谢你的解释:)

【问题讨论】:

    标签: java jsf


    【解决方案1】:

    实体 bean 不需要分配 JSF 托管 bean 范围。它们应该被分配为 JSF 托管 bean 的属性。所以基本上,它们将获得与声明为属性的 JSF 托管 bean 相同的范围。 JSF 托管 bean 范围注释仅在 @ManagedBean 类中有效。实体 bean 也不一定要归类为“支持 bean”。它们是更多的“价值对象”。

    您可以将其视为对另一个迷你 MVC 中完整 JSF MVC 图片的“V”的进一步划分:JSF 托管 bean 是控制器,实体是模型,XHTML 文件是视图。

    另见:

    【讨论】:

    • 谢谢BalusC,这个问题和我之前的问题有关。我试图在我的应用程序(或我对 JSF 的理解)中发现任何错误:)
    【解决方案2】:

    我会说你的 Managed Beans 应该是 scoped 。 而不是实体 bean, 那是假设实体 bean 是 pojhos 并且所有操作都在 托管 Bean。

    我正在回答这个 JSF v 1.1

    希望这会有所帮助。

    【讨论】:

    • 谢谢Archan,它有帮助,我迫切需要确认我的意见:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-14
    • 2017-02-09
    • 2011-12-19
    • 1970-01-01
    相关资源
    最近更新 更多