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 последовательно.