Так з чим їдять java beans stack overflow російською
Поки Новомосковскл розрізнену інформацію по серверним фреймворками, весь час натикався на поняття Java Beans, і всюди як би малося на увазі, що це поняття Новомосковскющему відомо.
Гугл каже щось про компонентну середу, угода про іменування класів і конструктор без параметрів (в общем-то, POJO тільки з Bean суфіксом), але хотілося б зрозуміти, як і де ці Bean'и використовують, в контексті сервлетів? Якщо поняття дуже широке, щоб навести конкретний приклад, підкажіть в словах де б такий клас використовувався і як?
заданий 22 Вересня '15 о 4:38
Поняття дійсно дуже широке, але як правило, ніякої Америки воно не відкриває. Java Beans - просто стандарт. Звичайний об'єкт звичайного java класу, який повинен дотримуватися таких основних правил:
У класу повинен бути конструктор за замовчуванням (без параметрів).
Поля повинні бути доступні через методи доступу get (аксессор) і set (мутатори).
Клас повинен бути серіалізуемим (реалізовувати інтерфейс java.io.Serializable).
на що в цьому класі варто звернути увагу - serialVersionUID, якщо його не оголосити, то IDE буде видавати попередження, але код компілюватиметься, і серіалізатор сам згенерує значення для цього поля.
І якщо вже ми заговорили про сервлетах, то нехай нашим завданням буде відобразити статтю на web сторінці за допомогою класичної зв'язки Servlet + JSP
для цього метод doGet сервлету буде виглядати приблизно так:
а сама сторінка article_example.jsp буде містити такий код:
Зауважте. в JSP сторінці вміст статті ми дістаємо через article.content. а не article.getContent (). хоча, саме поле conten t у нас позначено як private. Метод getContent буде викликаний неявно, тому що наш клас Article відповідає специфікації Java Beans.