Ключова різниця: "JSP (Java Server Pages) - це технологія на стороні сервера, тоді як" Servlet "- невелика програма, яка працює на сервері. Обидві ці технології Java використовуються для створення динамічних веб-сторінок.

Компанія Sun Microsystems випустила JSP (Java Server Pages) у 1999 році. JSP є мовами сценаріїв Java, які зазвичай використовуються для створення HTML, XML або інших веб-сторінок типу документа. Ці сторінки мають можливість динамічного скриптування, що розділяє логіку сторінки та статистичні компоненти сторінки. Їх основний дизайн фактично робить HTML більш функціональним, і робить запит бази даних більш динамічним. Для розгортання та запуску серверних сторінок Java (JSP) потрібний сумісний веб-сервер з контейнером сервлетів (наприклад, Apache Tomcat або Jetty). JSP - це архітектура високого рівня абстракції Java Servlet. Під час виконання ці JSP переводяться в сервлети. Сервлети JSP кешуються і повторно використовуються, поки не буде змінено оригінальний JSP. JSP може використовуватися самостійно і також може розглядатися як компонент конструкції серверної моделі-перегляду-контролера. Програмісти використовують код Java разом з деякими попередньо визначеними діями для створення веб-сторінок розмітки в Інтернеті; ці сторінки далі компілюються і виконуються на стороні сервера для доставки документів.
Сторінки JSP використовують кілька роздільників для функцій сценаріїв. Найбільш основним є скриплет JSP. Скриплет - це фрагмент коду Java, який запускається, коли користувач запитує сторінку.
Нижче наведено правильний цикл для сторінки JSP:
Підрахунок до трьох:
<% для (int i = 1; i
Це число <% = i%>.
В ПОРЯДКУ.
Його продуктивність буде представлена як:
Підрахунок до трьох:
Це число 1.
Це число 2.
Це число 3.
В ПОРЯДКУ.

Сервлети - це невеликі програми Java, які пов'язані з Java-аплетами. Вони в основному працюють у середовищі веб-сервера. Специфікація Servlet була створена компанією Sun Microsystems, версія 1.0 була завершена у червні 1997 року. Сервлет - це клас Java, який використовується для розширення можливостей сервера. Вони реагують на будь-які запити у вигляді відповідних відповідей. Базовий пакет Servlet визначає об'єкти Java для представлення запитів і відповідей сервлетів. Сервлети можуть генеруватися автоматично з серверних сторінок Java (JSP) компілятором JavaServer Pages. Технічно "сервлет" може бути визначений як клас Java в Java EE, що відповідає Java Servlet API.
Сервлети є комунікаторами по протоколу клієнт-сервер і найчастіше використовуються з протоколом HTTP. Їх основними цілями є:
- Щоб обробити або зберегти та надіслати дані HTML-форм.
- Щоб надати динамічний вміст, наприклад, результати запиту до бази даних.
- Керувати інформацією про стан, яка не існує в HTTP-протоколі без статусу, наприклад заповнення статей у кошик покупок відповідного клієнта.
Сервлет працює на життєвому циклі сервлету, існують в основному три сервлет-методи, які визначають життєвий цикл сервлету:
- в цьому(),
- (), та
- destroy ()
Порівняння між JSP і сервлетом:
JSP | Сервлет | |
Хто вони | JSP - це мова сценаріїв веб-сторінки, яка зазвичай використовується для створення динамічного веб-вмісту. | Сервлетами є програми Java, які вже скомпільовані і які також створюють динамічний веб-вміст. |
Як правило | JSP зазвичай більш орієнтована на відображення інформації. | Сервлет більше орієнтований на обробку інформації. |
Роль у MVC (контролер перегляду моделі) | JSP діє як глядач. | Сервлет діє як контролер. |
Застосовується під час | Вони, як правило, є кращими, коли обробка даних не вимагається. | Вони, як правило, є кращими, коли відбувається більше обробки та маніпуляцій. |
Швидкість руху | JSP працює повільніше в порівнянні з сервлетом. JSP компілюється в Java Servlets. | Сервлети працюють швидше в порівнянні з JSP. |
Код ускладнень | Програмування коду легко порівняно з програмою Servlets. | Програмування коду важко порівняти з програмою JSP. |
Об'єкт | Тут ми можемо створювати власні теги, які можуть безпосередньо викликати Java-боби. | У сервлетах такої можливості немає. |
Складається з | JSP - це представлення HTML в Java, змішане з сценаріями JAVA. | Сервлет є повнофункціональними Java кодами. |
Консистенція об'єктів | JSP має неявні об'єкти. | Сервлет не має такого типу об'єктів. |
Приклади | Щоб відобразити звіт. | Для обробки надісланої користувачем форми. |