Життєвий цикл JSP - Вивчіть кроки життєвого циклу JSP за допомогою прикладів

Зміст:

Anonim

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

У цій статті ми обговоримо життєвий цикл JSP. Сторінки сервера Java, технологія на стороні сервера, яка бере на себе відповідальність за обробку на сервері.

1. Де нам потрібен JSP?

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

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



Вміст або логіка всередині відображаються динамічно і передаються лише бек-ендом.

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

2. Життєвий цикл JSP:

Існують певні фази, на яких цей цикл розділений, визначений так:

  1. Фаза перекладу - де файл JSP перетворюється у файл сервлетів.
  2. Фаза компіляції - коли сервлет-файл перетворюється на сервлет-клас.
  3. Завантаження класу
  4. Моменталізація об'єкта сервлетів
  5. Контейнер сервлетів викликає метод jspInit () для ініціалізації
  6. Контейнер сервлетів викликає _jspService () для обробки запиту
  7. Очистіть JSP, тут контейнер сервлетів викликатиме метод jspDestroy ().

Тепер давайте розробимо вищезазначені кроки, щоб мати чіткішу картину -

Крок 1

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

Крок 2

Тепер настає час компіляції вихідного коду, тобто перетворення сервлет-коду в байт-код java (байт-код java - це набір інструкцій для віртуальної машини java).

Крок 3

Клас сервлетів, завантажений з джерела JSP, тепер буде завантажений у контейнер.

Крок 4

Після завантаження файлу класу веб-контейнером контейнер JSP тепер використовує конструктор без аргументів для створення екземпляра класу сервлетів. Тепер, як тільки контейнер ініціалізує об'єкти, викликаючи метод 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"
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"
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"
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"
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"
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"
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"
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"
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"
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"
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"
pageEncoding="ISO-8859-1"%>


My Login Form

<%
Date d = new Date();
System.out.println("Current Date= "+d);
%>

UserName

Password


У наведеному вище прикладі код, розміщений всередині, відображається динамічно, як ми вже згадували раніше, тепер, коли цей запит буде подано, він буде отриманий контролером дій, який в основному є класом Java, який містить параметри, відповідні іменам, згаданим у Файл JSP.

Контейнер сервлетів створює модальний об'єкт, і вміст можна посилатися в інших JSP, посилаючись на цей конкретний контролер.

Такий підхід, що базується на MVC, сьогодні знаходить місце з такими технологіями, як:

  1. Весняний MVC
  2. Стрічки 2
  3. Сервлець

Spring MVC та Struts 2 представили свій специфічний URI для використання JSP на спеціально налаштований спосіб, а також вони вводять різні різновиди тегів для таких, як автозаповнення, ітератор, список тощо.

Тож JSP знаходить ідеальне місце у багатьох рамках завдяки своїй гнучкості.

Висновок

  • Отже, ми дізналися, що динамічні веб-сайти надають інтерфейс через JSP, тоді як статичні сторінки можуть бути безпосередньо розміщені в HTML, оскільки вони відтепер не потребують жодних маніпуляцій з даними / вмістом.
  • Сучасні технології сумісні з JSP і використовуються підкосами та пружинними рамами, які знаходять місце у великих програмах, пов’язаних з банківською діяльністю, SCM, роздрібними магазинами тощо.
  • Сумісний з AJAX-дзвінками для динамічної візуалізації.
  • Додаток не може мати тип однієї сторінки, оскільки кожен раз, коли потрібно завантажувати сторінку з бекенда.
  • Плитки можна використовувати для базових форматів компонування в підкосах і навесні, і те, що нам потрібно робити знову і знову, - це просто тіло.
  • У кінцевому рахунку коди перетворюються в еквівалент HTML на передній частині.
  • JSP розрізняють концепцію подання контенту та створення контенту.
  • Перехоплювачі забезпечуються різними рамками, які полегшують життя розробникам, як утиліти в підкосах, передбачені для процесів завантаження файлів тощо.

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

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

  1. JSP проти ASP
  2. Питання для інтерв'ю AJAX
  3. Що таке MVC?
  4. JSP проти Сервлета
  5. Ітератори в C #