Gymterview
junior

Что вы знаете о Языке выражений JSP (Expression Language)

Expression Language (EL) — скриптовый язык в JSP, который предоставляет упрощённый доступ к данным из JavaBeans, коллекций, неявных объектов и контекстных параметров без написания Java-кода. EL-выражения записываются в формате ${expression} и вычисляются контейнером при генерации ответа.

Возможности EL (JSP 2.0+)

  • Доступ к свойствам бинов: ${user.name} -> user.getName()
  • Навигация по коллекциям: ${list[0]}, ${map["key"]}
  • Арифметические и логические операции
  • Вызов методов (EL 3.0): ${list.size()}
  • Создание собственных EL-функций
  • Автоматический поиск атрибута по scope: page -> request -> session -> application

Пример использования

Пример
<!-- Вместо скриплета -->
<%= ((User)request.getAttribute("user")).getName() %>

<!-- Используем EL -->
${user.name}

EL значительно упрощает JSP-страницы и делает их читаемыми для верстальщиков. Вместе с JSTL он позволяет создавать JSP-страницы вообще без Java-кода, что является рекомендуемым подходом.

На собеседовании: покажите, что EL — замена скриплетам для доступа к данным. Ключевое преимущество — краткость и автоматический поиск атрибутов по scope. Частая ошибка — не знать, что EL ищет атрибут по всем scope последовательно.