Въведение в жизнения цикъл на JSP
В тази статия ще обсъдим жизнения цикъл на JSP. Страници на Java сървър, технология от страна на сървъра, която поема отговорността за обработката на сървъра.
1. Къде имаме нужда от JSP?
- Е, ако сте в уеб базирана разработка и това, което виждаме, е изграждане на динамични уебсайтове, тогава JSP играят жизненоважна роля, тъй като рендерирането се извършва динамично.
- JSP работят само върху основен HTML код, тялото на страницата се състои само от основни маркери за HTML, но има определени заставки, параметри, стойности на списъка, итератори, които са изпълними само с JSP, HTML ви дава статичен дисплей само докато се правят решения. по време на изпълнение се нуждае от динамично управление, така че JSP се появяват като решение там.
- JSP позволява разделяне на генериране на съдържание и представяне на съдържание
Нека вземем тук основен пример, който ще ви даде представа за това динамично изобразяване.
Съдържанието или логиката вътре се изобразяват динамично и се предават само от бек-енд.
Сега нека да продължим напред и да разберем жизнения цикъл на JSP и как всъщност се представят в предния край, за да осигурят на клиента четене или готов опит.
2. Жизнен цикъл на JSP:
Има определени фази, в които този цикъл е разделен, дефиниран по следния начин -
- Фаза на превод - където JSP файлът се преобразува в сървлевия файл.
- Фаза на компилация - където сервлет файл се преобразува в клас сервлет.
- Зареждане на класа
- Момент на сервлет обекта
- Контейнерът на сервлет извиква метода jspInit () за инициализация
- Контейнерът на сервлет извиква _jspService () за обработка на заявката
- Почистете JSP, тук контейнерът на сервлет ще извика метода jspDestroy ().
Сега нека разработим горепосочените стъпки, за да имате по-ясна картина -
Етап 1
Във фазата на превод, сервлетният контейнер превежда JSP в сервлет, така че кодирането на базата на тагове получава еквивалентна форма в java, така че Java Virtual Machine (JVM) да може да разбере това (тъй като няма да разбере езика на етикетите), Този превод се извършва от сървъра или по време на разгръщане на уеб приложение или когато JSP получи първата си заявка за изпълнение.
Стъпка 2
Сега идва моментът за компилация на изходния код, т.е. преобразуване на сервлет кода в java байтов код (java байт кодът е набор от инструкции за java виртуална машина).
Стъпка 3
Класът на сървлета, който беше зареден от източника на JSP, вече ще бъде зареден в контейнера.
Стъпка 4
След като зареди файл от клас от уеб контейнера, JSP контейнерът използва конструктор без аргументи за създаване на екземпляр от класа servlet. Сега, след като контейнерът инициализира обектите чрез извикване на метод jsplnit ().
Public void jsplnit()
(
// servlet initialization related snipped to be placed here
)
Стъпка 5
Сега идва времето за обработка на заявки, тук инициализираните JSP еквивалентни сервлетни обекти се използват за обработка на клиентските заявки. Методът _jspService () се извиква от уеб контейнера. Това извикване се извършва един сървлет обект, предаващ HTTPServletRequest обекта, и HTTPServletResponse обект за съответните заявки и отговори. Обърнете внимание, че няма разпоредба за отмяна на метода _jspService ().
Public void _jspService( HttpServletRequest request, HttpServletResponse response)
(
//snipped is placed here
)
Стъпка 6
Последната стъпка се нарича изчистване на JSP, JSP трябва да бъде отстранен от употреба от контейнера и методът jspDestroy () се използва за същия, този метод се използва само веднъж. Има разпоредба за отмяна на този метод и това може да се направи за случаите, когато искаме да извършим нашите персонализирани действия като освобождаване на връзка за база данни и т.н.
public void jspDestory()
(
// snippet is placed here
)
Пример:
Нека създадем форма за вход за нашето примерно приложение и ще използваме JSP за изобразяване на определено съдържание тук.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
My Login Form
<%
Date d = new Date();
System.out.println("Current Date= "+d);
%>
UserName
Password
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" | <%@ page language="java" contentType="text/html; charset=ISO-8859-1" |
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
My Login Form
<%
Date d = new Date();
System.out.println("Current Date= "+d);
%>
UserName
Password
В горния пример, поставеният вътре код се изобразява динамично, както споменахме и преди, сега след като тази заявка бъде изпратена, тя ще бъде получена от контролера за действие, който по същество е клас Java, който съдържа параметрите, съответстващи на имената, споменати в JSP файл.
Контейнерът на сервлет създава модален обект и съдържанието може да бъде посочено в други JSP, като се позовава на този конкретен контролер.
Този вид базиран на MVC подход в днешно време намира място с технологии като -
- Пролетен MVC
- Подпори 2
- Servlets
Spring MVC и Struts 2 въведоха своя специфичен URI за използване на JSP по персонализиран начин и те също въведоха различни разновидности на тагове за това като автодопълване, итератор, списък и т.н.
Така JSP намира идеално място в много рамки поради своята гъвкавост.
заключение
- Оттук научихме, че динамичните уебсайтове имат своя фронтленд чрез JSP, докато статичните страници могат да бъдат директно поставени на HTML, тъй като оттук нататък не се нуждаят от никакви манипулации с данни / съдържание.
- Съвременните технологии са съвместими с JSP и се използват от подпори и пролетни рамки, които намират място в големи приложения, свързани с банкиране, SCM, магазини на дребно и др.
- Съвместим с AJAX разговори за динамично изобразяване.
- Приложението не може да бъде от типа на една страница, тъй като всеки път, когато се изисква да се зарежда от страницата.
- Плочките могат да се използват за основни формати за оформление в подпори и пружини и това, което трябва да правим отново и отново, е просто body.
- В крайна сметка кодовете се преобразуват в HTML еквивалент в предния край.
- JSP диференцират концепцията за представяне на съдържание и генериране на съдържание.
- Прехващачите се осигуряват от различни рамки, които улесняват живота на разработчиците, като помощните програми в подпори са предоставени за процеси за качване на файлове и т.н.
Препоръчителни статии
Това е ръководство за жизнения цикъл на JSP. Тук обсъдихме въвеждането, стъпките и примера на жизнения цикъл на JSP. Можете да разгледате и другите ни предложени статии, за да научите повече -
- JSP срещу ASP
- Въпроси за интервю на AJAX
- Какво е MVC?
- JSP срещу Servlet
- Итератори в C #