Въведение в жизнения цикъл на 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 Faces е фокусиран върху частта на потребителския интерфейс на уеб приложенията - вие определяте страниците на езика за дефиниране на изглед на Facelets.

Стандартният език за дефиниране на изглед, използван в JSF, се нарича Facelets.

Различни редовни фази на жизнения цикъл на JSF

Има шест различни редовни фази в жизнения цикъл на JSF. Горната диаграма показва типичния ред на изпълнение на шестте фази.

1. Възстановяване на фазата на изглед

Тази фаза започва всеки път, когато потребителят поиска JSF страница, като просто кликне върху връзка, бутон и така нататък. В това поколение на изглед на страници се извършва обвързване на компоненти към обработващите събития и валидатори, както и изгледът се запазва в обекта FacesContext.

2. Прилагайте стойността на заявката

Целта на тази фаза е направена за всеки компонент да извлече текущото състояние

3. Фаза на валидиране на процеса

В тази фаза локалните стойности, съхранявани за получаване на компонента в дървото, ще бъдат в сравнение с правилата за валидиране, разрешени за получаване на компонентите.

4. Актуализирайте фазата на стойностите на модела

След като се потвърди, че данните са валидни в последната фаза, може да се стартират локални стойности на елементи, свързани със свойствата на базирани на сървъра обекти, например поддръжка на боб.

5. Приканете фаза на кандидатстване

Преди тази фаза стойностите на компонентите бяха трансформирани, валидирани, както и поставени върху обектите на боб, така че да можете да ги използвате, за да изпълните бизнес логиката на приложението.

6. Фаза на реагиране на реакция

Тази фаза извлича нов изглед, ако е необходимо, използвайки стойности от страна на сървъра, след това извеждаме изгледа, използвайки стойностите, които са в дървото, а след това за боб, който не е по заявка, с други думи в обхвата на сесията или в обхвата на приложението, ние ще след това запазете тези текущото състояние.

Разбиране на Faces Flows с демонстрационно приложение в пример от реалния живот

По-долу е демонстрирано приложението на потоци от лица с пример:

Процесът на касата

  • Въведете данни за доставка
  • Име и адрес
  • Въведете данни за плащане
  • Име, вид и номер на кредитната карта
  • Преглед на поръчката
  • Потвърдете или отменете поръчката
  • Плащането е успешно или неуспешно

Погледнете потока на касата с възли на потока в диаграмата по-долу.

Потокът се състои от редица възли. Всеки възел се стъпва в потока, който изпълнява някаква функция и той определя кой възел трябва да бъде извикан следващ. В дефиницията на поток определяте възлите и правилата за навигация между тях. На тази диаграма виждате възлите на потока на касата.

Започва с доставка, след това плащане и преглед, след това възел за изпълнение, който е мястото, където е извършено плащането и поръчката е изпълнена и накрая проверява резултат успех или неуспех, и след това процесът е завършен.

Видове поточни възли в жизнения цикъл на JSF

В жизнения цикъл на JSF има пет различни вида възли.

Преглед на възел

  • Показване на изглед (страница)

Възел за извикване на метод

  • Обадете се на метод

Превключване на възел

  • Изберете един от поредицата случаи

Връщане на възел

  • Прекратете потока

Възел за повикване на потока

  • Обадете се на друг поток

Потоците са подобни на методите

По-долу са подобни методи на потока в жизнения цикъл на JSF:

Входна точка, Параметри, Изходни точки

  • Може да върне една или повече стойности

Обхват на потока

  • Фасул с боб е като местни променливи

Вложени разговори

  • Стек за обаждания

Стек на повиквания се използва за следене на извиквания и обхвати на потоци, точно като това как работи с метода Когато потока се нарича нов запис се изтласква в стека и когато потокът връща вписването му се изскача от стека. Има два начина да се определи конфигурацията на потока.

XML файл за конфигурация

  • В face-config.xml или в отделен файл

В Java, използвайки API Builder на Flow

  • Метод на производител на CDI с анотация @FlowDefinition

Заключение: Жизнен цикъл на JSF

Java Server Faces (JSF) е стандартната концепция за създаване на уеб приложения в Java. Въпреки това, по време на разработката, както и внедряването на JSF приложения, има многобройни характеристики и конфигурации, които трябва да се прилагат, за да помогнат за това приложенията да бъдат по-безопасни, надеждни и ефективни.

Препоръчителни статии

Това е ръководство за жизнения цикъл на JSF. Тук сме обсъдили шестте различни редовни фази на жизнения цикъл на JSF и пет различни вида възли в жизнения цикъл на JSF. Можете също да разгледате следните статии, за да научите повече -

  1. JSP срещу JSF - Топ разлики
  2. Java EE срещу пролетта
  3. Въпроси за интервю с Java Servlet
  4. Кариера в Java