JSF管理bean命名约定



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

你这样工作过吗?特别是,我不太喜欢它,尽管它使搜索变得容易。你是否在使用另一种约定?

谢谢你回答这个简单的疑问。

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

  • FooBean
  • FooBacking
  • FooManager
  • FooController
  • FooManagedBean

或者仅仅是Foo,然后放在特定的包中,如com.example.controller, com.example.backing甚至com.example.view

我自己倾向于将FooManager用于应用程序和会话范围的bean(例如DataManager, UserManager, LocaleManager等)和Foo,或者根据我当前项目的要求,FooBacking(例如LoginLoginBacking)用于请求和视图范围的bean,它们通常绑定到特定的<h:form>和/或视图。

FooBean太模糊。实际上,很多类都可以标记为javabean。JSF托管bean、JPA实体、ejb、数据传输对象、值对象等。Bean的命名并没有以任何方式表明类的真正职责。的确,我经常在博客或论坛/问答的通用代码示例中使用public class BeanMyBean,但在现实世界中,您应该避免这样做。

FooManagedBean在IMO上是一个糟糕的名字,它不仅太长而且难看,而且从技术上讲,托管bean是由某些框架(在这种情况下是JSF)管理的支持bean的实例。类定义本身实际上是一个支持bean,而不是一个托管bean。所以FooBackingBean在技术上更正确,但它仍然太长,Bean部分有点痒。

无论如何,这是一个相当主观的问题,很难用一个正确的答案客观地回答。对我或其他人来说,你怎么做并不重要,只要你在整个项目中保持一致。

相关内容

  • 没有找到相关文章

最新更新