Разница между JSP EL, JSF EL и Unified EL [закрыто]



Я хотел бы знать подробную разницу между языками выражения (EL).
Есть в JSP Эл, для JSF el и унифицированного Эл.



Я хотел бы знать историю за EL и то, что последний EL, который используется в приложениях Java EE. Является ли это EL общим для всех технологий просмотра в последних версиях?

655   2  

2 ответов:

  • июнь 2002: JSTL 1.0 был впервые представлен с EL. Это были те ${} вещи, которые работают только в тегах JSTL. Он предназначен для вызова классе get методы.

  • Nov 2003: JSP 2.0 был введен и EL был перемещен из JSTL 1.0 в JSP 2.0 in javax.servlet.jsp.el пакета и он стал стандартный EL как часть стандарта J2EE 1.4. JSTL 1.1 был отправлен без EL. Сейчас ${} работает вне тегов JSTL в JSP текст шаблона, а также.

  • Mar 2004: JSF 1.0 был представлен с отложенный EL на javax.faces.el пакета. Это были те #{} вещи, которые работают только внутри тегов JSF. Разница со стандартным JSP EL ${} не только get, но и set. Это было обязательным для автоматического создания управляемого компонента и установки значений входных компонентов. Стандартный EL ${} работает и в выходных тегах JSF, но они не будут автоматически создавать бобы, если они еще не существуют в области видимости, и они не будут устанавливать входные значения.

  • май 2005 года: в то время как все еще готовится к новому JSP 2.1, который должен быть выпущен в мае 2006 года, отложенный EL #{} был извлечен из JSF и объединен со стандартным EL ${} на javax.el пакета. В этот момент он стал unified EL который был введен с JSF 1.2 и стал позже частью стандарта JSP 2.1 и Java EE 5. Элемент #{} теперь также можно использовать в JSP-теги get ценностей, а не set значения. Элемент ${} теперь можно в JSP также автоматически создавать управляемые бобы, но не set значения.

  • ноябрь 2006: Facelets был представлен в качестве преемника JSP. Это позволило использовать #{} в тексте шаблона вне тегов JSF, в качестве замены <h:outputText> без каких-либо атрибутов. Он также лечит ${} Как #{}, так что они оба ведут себя одинаково в Facelets.

  • Dec 2009: EL был извлечен из спецификации JSP и стал автономной спецификацией, которая будет поддерживаться независимо от JSP, первая версия-EL 2.2 (JSR-245), аналогичная JSP 2.2. Основная новая функция-вызов параметризованных методов вместо вызова только JavaBean getters / setters внутри #{} синтаксис, например,#{bean.method(argument)}. Кроме того, Facelets стали частью стандарта Java EE 6.

  • июнь 2013: был представлен EL 3.0, который поставляется с автономным EL процессор, позволяющий использовать в простом приложении Java SE. Другие основные новые функции-это новый оператор конкатенации строк += новые операции для объектов коллекции, включая потоки и лямбда-выражения -> (даже на Java 6/7!) и импорт констант в область EL.

добавление к ответу BalusC по...

EL был первоначально задуман и реализован Натаном Абрамсоном из Art Technology Group в 2001 году. В то время реализация была известна как самый простой язык выражения (SPEL). Реализация была позже включена в JSTL1.0. Натан был частью группа экспертов JSR-052, и был зачислен в спецификация JSTL как движущая сила языкового выражения.

"Особое упоминание Натану Абрамсону за то, что он является движущей силой выражения язык, введенный в JSTL"

Comments

    Ничего не найдено.