Вступ до життєвого циклу JSF

1. Сторона сервера:

Код, який ви пишете в додатку JavaServer Faces (JSF), працює на сервері, але компоненти також можуть включати код JavaScript, який працює на клієнті. Ви можете порівняти це з рамками на стороні клієнта, такими як Angular, де ви пишете код у JavaScript або Typescript, який працює на стороні клієнта у веб-браузері.

Те, що це рамка на сервері, не означає, що ви не можете використовувати код на стороні клієнта в додатку JSF. Насправді компоненти JSF можуть включати підтримку JavaScript та JSF для AJAX, для зв'язку, код на стороні клієнта та на стороні сервера.

2. Компонент:

Веб-програми JavaServer Faces побудовані з використанням багаторазових, автономних компонентів як будівельних блоків, що робить створення веб-додатків швидшими та простішими.

Найцікавіший аспект JavaServer Faces, який виділяє його на основі програм веб-додатків на основі дій, таких як Spring Web MVC (Model-View-Controller), Struts або звичайні сервлети на сторінках JavaServer, це те, що він базується на компонентах. Це означає, що в JSF будівельні блоки вашої програми є багаторазовими і самостійними компонентами.

Компонент може бути будь-якою частиною веб-програми. Це може бути таким же простим, як звичайний HTML-контроль за формами, наприклад полем для введення тексту або кнопкою, або ж складною таблицею з підтримкою сортування та створення сторінок.

Наприклад:

Календар або діаграма або будь-яка інша частина веб-програми, яка може бути представлена ​​рамкою, керує компонентами на сторінці та піклується про багато речей, таких як отримання даних користувача з полів форми, перевірка та перетворення даних та їх збереження. моделювати об'єкти та викликати дії.

JSF постачається з низкою стандартних компонентів, а також є бібліотеки з багатьма готовими до використання компонентами.

3. Рамка веб-інтерфейсу

Обличчя JavaServer орієнтовано на частину веб-додатків з користувальницьким інтерфейсом - ви визначаєте сторінки мовою визначення перегляду Facelets.

Стандартна мова визначення перегляду, що використовується в JSF, називається Facelets.

Різні регулярні фази життєвого циклу JSF

Всередині життєвого циклу JSF є шість різних регулярних фаз. Наведена вище схема показує типовий порядок виконання шести фаз.

1. Відновити етап перегляду

Цей етап починається щоразу, коли споживач запитує сторінку JSF, просто натиснувши на посилання, кнопку тощо. У цій генерації подання сторінок виконується прив'язка компонентів до обробників подій та валідаторів, а також представлення зберігається в об'єкті FacesContext.

2. Застосувати значення запиту

Мета цього етапу полягає у тому, щоб кожен компонент отримував поточний стан

3. Фаза перевірок процесу

На цій фазі локальні значення, що зберігаються для отримання компонента в дереві, будуть порівняно з правилами перевірки, дозволеними отримувати компоненти.

4. Оновіть етап фазових значень

Після перевірки достовірності даних на останній фазі можуть бути запущені локальні значення елементів, пов’язані із властивостями об’єкта на основі сервера, наприклад, резервними файлами.

5. Викликати фазу заявки

Напередодні цієї фази значення компонентів були перетворені, затверджені, а також нанесені на об'єкти bean, щоб ви могли використовувати їх для виконання ділової логіки програми.

6. Фаза візуалізації

Ця фаза отримує новий вигляд, якщо потрібно, використовуючи значення з боків на сервері, тоді ми виводимо подання з використанням значень, що знаходяться в дереві, а потім для квасолі, яка не є на запит, іншими словами про область сеансу або область застосування, ми будемо тоді збережіть ці поточний стан.

Розуміння потоків облич із демонстраційним застосуванням у прикладі реального життя

Нижче наведено демонстраційне застосування потоків обличчя з прикладом:

Процес оформлення замовлення

  • Введіть дані про доставку
  • Ім'я та адреса
  • Введіть платіжні дані
  • Ім'я, тип та номер кредитної картки
  • Перегляд замовлення
  • Підтвердьте або скасуйте замовлення
  • Платіж вдався чи не вдався

Перегляньте потік оформлення замовлення з вузлами потоку на схемі нижче.

Потік складається з ряду вузлів. Кожен вузол крокує в потоці, який виконує якусь функцію, і він визначає, який вузол слід викликати далі. У визначенні потоку ви визначаєте вузли та правила навігації між ними. На цій схемі ви бачите вузли потоку каси.

Він починається з доставки, потім оплатою та переглядом, потім вузлом виконання, в якому здійснюється оплата, і замовлення виконується, і нарешті перевіряється результат успіху чи невдачі, а потім процес закінчується.

Види потокових вузлів у життєвому циклі JSF

У життєвому циклі JSF є п’ять різних типів.

Переглянути вузол

  • Відображення перегляду (сторінка)

Вузол виклику методу

  • Виклич метод

Вузол комутації

  • Виберіть один із серій справ

Повернутий вузол

  • Кінець потоку

Вузол виклику потоку

  • Викличте інший потік

Потіки схожі на методи

Нижче наводяться подібні методи потоку в життєвому циклі JSF:

Точка входу, Параметри, Вихідні точки

  • Може повернути одне або більше значень

Сфера застосування

  • Об'єм потоку бобів схожий на місцеві змінні

Вкладені дзвінки потоку

  • Стек викликів

Стек викликів використовується для відстеження викликів та обсягів потоків, точно так само, як це працює з методом Коли потік викликається, новий запис висувається в стек і коли потік повертається, його запис вискакує зі стека. Є два способи вказати конфігурацію потоку.

Файл конфігурації XML

  • В face-config.xml або в окремому файлі

У Java за допомогою API Builder Flow

  • Метод виробника CDI з анотацією @FlowDefinition

Висновок: життєвий цикл JSF

Обличчя сервера Java (JSF) - це стандартна концепція створення веб-додатків на Java. Незважаючи на це, протягом усієї розробки, а також розгортання програм JSF є численні продуктивність та конфігурації, які необхідно застосувати, щоб зробити додатки більш безпечними, надійними та ефективними.

Рекомендовані статті

Це було керівництвом щодо життєвого циклу JSF. Тут ми обговорили шість різних регулярних фаз життєвого циклу JSF та п'ять різних типів вузлів у життєвому циклі JSF. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. JSP проти JSF - основні відмінності
  2. Java EE проти весни
  3. Питання для інтерв'ю Java Servlet
  4. Кар'єра на Java