JSF управляет соглашениями об именах bean

В эти дни я работал с JSF, но там есть "конвенция". Я сомневаюсь, что мне следует использовать. Во время работы с управляемым beans люди использовали его как XxxxxManagedBean, где префикс может быть любым именем, относящимся к вашей компании.

Сработали ли вы так? В частности, мне это не нравится, несмотря на то, что поиск легко. Вы используете другое соглашение?

Спасибо, что ответили на это простое сомнение.

Ответы

Ответ 1

Не существует строгого соглашения, определенного самим JSF. Я видел следующие соглашения:

  • FooBean
  • FooBacking
  • FooManager
  • FooController
  • FooManagedBean

Или даже просто Foo, который затем помещается в определенный пакет, например com.example.controller, com.example.backing или даже com.example.view и т.д.

Я сам склонен использовать FooManager для приложений и сеансов beans (например, DataManager, UserManager, LocaleManager и т.д.) и просто Foo, или как это предусмотрено моим текущим проектом, FooBacking (например, Login или LoginBacking) для запроса и просмотра области beans, которые обычно привязаны к определенному <h:form> и/или виду.

FooBean слишком расплывчато. Действительно, многие классы могут быть отмечены как javabeans. JSF управлял beans, объектами JPA, EJB, объектами передачи данных, объектами ценности и т.д. Именование Bean не указывает на реальную ответственность класса каким-либо образом. Правда, я использую часто public class Bean или MyBean в моих примерах общего кода в блогах или форумах /Q & Ответы, но в реальном мир вам следует избегать этого.

FooManagedBean - это плохое имя IMO, оно не только слишком длинное и уродливое, но технически управляемый bean является экземпляром поддержки bean, которая управляется некоторой структурой (JSF в этом случае). Само определение класса действительно поддерживает bean, а не управляемый bean. Таким образом, FooBackingBean технически более корректен, но он слишком длинный, а часть Bean немного зуд.

Во всяком случае, это довольно субъективный вопрос, на который вряд ли можно объективно ответить на вопрос "Один и правильный". Для меня или для кого-то еще не важно, что вы делаете, если вы согласны с этим на протяжении всего проекта.