Что такое Java Server Pages (JSP)
JSP (JavaServer Pages) — технология создания динамических веб-страниц, которая позволяет встраивать Java-код в HTML-шаблоны. JSP-страница транслируется в Java-сервлет компилятором Jasper, компилируется в байт-код и выполняется контейнером. Результат — обычный HTML, который отправляется клиенту.
JSP предоставляет несколько механизмов для работы с динамическим контентом:
- Скриплеты (
<% code %>) — встроенный Java-код (deprecated подход) - Expression Language (
${expression}) — упрощённый доступ к данным - JSP-теги и JSTL — декларативные конструкции для логики представления
- Пользовательские теги — расширяемый набор тегов
JSP-страницы загружаются в контейнер, автоматически транслируются при первом обращении и кэшируются. Повторная трансляция происходит только при изменении JSP-файла. В Jakarta EE JSP остаётся поддерживаемой, но в новых проектах заменён на Thymeleaf, FreeMarker или frontend-фреймворки (React, Vue, Angular).
На собеседовании: JSP — legacy-технология. Важно знать принцип работы (JSP -> сервлет -> HTML), но подчеркнуть, что в новых проектах не используется. Spring Boot по умолчанию не поддерживает JSP в executable JAR.