Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Бины в JSF


Автор: stg_unholy 20.11.2006, 15:36
Насколько правильно бизнесс-объект подворачивать во "ViewBean" JSF для показа?

Например есть объект

Код

public class Student {
  private ID;
  private String name;

  public Integer getID() {
    return ID;
  }

  public String getName() {
    return name;
  }

  /** 
    Setters down below
  **/
}



Насколько правильно для показа этого объекта использовать след. конструкцию ?

Код

public class StudentBean {
  private Student student;

  public Integer getID() {
    return student.getID();
  }

  public String getName() {
    return student.getName();
  }

  public String getFullName() {
    return student.getName() + "(" + student.getID() + ")";
  }

  /** 
    view actions and setters down below.
  **/
}



Или есть более правильные пути ????

Автор: Sherst 20.11.2006, 17:20
ИМХО вполне нормально.


Автор: YuG 20.11.2006, 17:33
Я бы сделал getter и setter для Student в StudentBean, a методы getName и getID в нем убрал.

Ну и попридираюсь 
private ID; // не скомпилируется ;-)

Автор: stg_unholy 21.11.2006, 12:48
ну согласен smile прям тут набирал smile))

Автор: stg_unholy 22.11.2006, 16:57
Хорошо, но если сделать getter и setter для Student в StudentBean, тогда получается, что jsp имеет доступ напрямую к бизнесс-объекту, а это правильно?

Автор: YuG 22.11.2006, 18:13
Это смотря, что тебе нужно.
Можно и так, как ты начал, можно и по-моему.
Все от целей зависит.

Например, если твой Student будет иметь 340 методов, ты их все будешь дублировать в StudentBean?
(это в защиту моей версии)
Более того, в Student ты давать public доступ только для опеределенных методов.
И твоя jsp будет иметь доступ лишь к ним.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)