Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Бины в EE 
:(
    Опции темы
stg_unholy
Дата 23.10.2006, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 19.9.2006

Репутация: нет
Всего: нет



Добрый день! 
Пишу web-приложение на JSF+Spring+JDBC. И меня постоянно мучает вопрос, о правильной организации бинов....Например есть бизнес-объект 

Код

public class Picture {

  private Integer ID;
  private String name;
  private String comments;
  private List<InventoryHolding> inventoryHoldings;

  public String getComments() {
    return comments;
  }

  public void setComments(String comments) {
    this.comments = comments;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public Integer getID() {
    return ID;
  }

  public void setID(Integer ID) {
    this.ID = ID;
  }

  public List<InventoryHolding> getInventoryHoldings() {
    return inventoryHoldings;
  }

  public void setInventoryHoldings(List<InventoryHolding> inventoryHoldings) {
    this.inventoryHoldings = inventoryHoldings;
  }


По всем примерам которые я видел (Put JSF to Work) JSF бин должен представлять собой аналогичный класс, с той лишь разницей, что в нем еще пишутся методы для работы с интерфейсом например так:

Код

public class PictureBean extends BaseBean {

  private Integer ID;
  private String name;
  private List<InventoryHoldingBean> linkedInventory = new ArrayList<InventoryHoldingBean>();

  public PictureBean() {}

  public PictureBean(Integer ID, String name) {
    this.ID =  ID;
    this.name = name;
  }

  public List<InventoryHoldingBean> getLinkedInventoryHoldings() {
    List<InventoryHolding> linkedInventoryHoldings =
      serviceLocator.getIngredientService().getIngredientsLinkedToPicture(ID);

    linkedInventory.clear();
    for(InventoryHolding ih: linkedInventoryHoldings) {
      InventoryHoldingBean ihb = InventoryHoldingBuilder.getInventoryHoldingBean(ih);
      ihb.setServiceLocator(this.serviceLocator);
      linkedInventory.add(ihb);
    }
    return linkedInventory;
  }

  public Integer getID() {
    return ID;
  }

  public void setID(Integer ID) {
    this.ID = ID;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  private Integer inventoryHoldingIDToDelete;

  public void setInventoryHoldingIDToDelete(Integer ID) {
    this.inventoryHoldingIDToDelete = ID;
  }

  private InventoryHoldingBean getInventoryHoldingBean(Integer ID) {
    for (InventoryHoldingBean ihb : linkedInventory) if (ihb.getID().equals(ID)) return ihb;
    return null;
  }

  public void deleteLink(ActionEvent ae) {
    
  }


Но не проще ли "подвернуть" бизнес объект в JSF-бин? И вообще как правильно организовывать объекты в  связке JSF+Spring?

PM MAIL   Вверх
serious
Дата 25.10.2006, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 15.2.2003
Где: Пенза

Репутация: нет
Всего: 1



ИМХО, твой бин правильный... Вообще, зачем перегружать его лишней и наверное ненужной логикой, и так все будет работать.


--------------------
Я знаю то, что ничего не знаю, а некоторые не знают и этого.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0571 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.