gpt4 book ai didi

JSF 托管 bean 命名约定

转载 作者:行者123 更新时间:2023-12-03 12:43:57 32 4
gpt4 key购买 nike

这些天我曾经使用 JSF,但是有一个“约定”我怀疑我是否应该使用。在使用托管 bean 时,人们习惯将其命名为 XxxxxManagedBean其中前缀可以是与您的业务相关的任何名称。

你有过这样的工作吗?特别是,尽管使搜索变得容易,但我不太喜欢。您是否使用其他约定?

感谢您回答这个简单的疑问。

最佳答案

JSF 本身没有指定严格的约定。我见过以下约定:

  • FooBean
  • FooBacking
  • FooManager
  • FooController
  • FooManagedBean

  • 甚至只是 Foo然后将其放入特定的包中,如 com.example.controller , com.example.backing甚至 com.example.view , ETC。

    我自己倾向于使用 FooManager用于应用程序和 session 范围的 bean(例如 DataManagerUserManagerLocaleManager 等)和只是 Foo ,或者按照我当前项目的要求, FooBacking (例如 LoginLoginBacking )用于请求和查看范围的 bean,它们通常都与特定的 <h:form> 相关联和/或查看。
    FooBean太模糊了。真的很多类都可以标记为javabeans。 JSF 托管 bean、JPA 实体、EJB、数据传输对象、值对象等。 Bean命名并不以任何方式表明该类的真正责任。没错,我使用 often public class BeanMyBean在我的博客或论坛/问答答案中的通用代码示例中,但在现实世界中你应该避免这种情况。
    FooManagedBean IMO 是一个糟糕的名字,它不仅太长而且丑陋,而且从技术上讲,托管 bean 是由某个框架(在本例中为 JSF)管理的支持 bean 的一个实例。 The class definition itself is really a backing bean, not a managed bean .所以一个 FooBackingBean在技​​术上更正确,但它仍然太长而且 Bean部分有点痒。

    无论如何,这是一个非常主观的问题,很难用 The One And Correct 答案客观地回答。只要你在整个项目中始终保持一致,对我或其他任何人来说,你对它的看法并不重要。

    关于JSF 托管 bean 命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5697351/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com