[解決済み] JSP EL、JSF EL、Unified ELの違い【終了しました
質問
表現言語(EL)の詳しい違いを教えてください。 JSP EL、JSF EL、Unified ELがあります。
ELの歴史と、Java EEアプリケーションで使用されている最新のELが知りたいです。最新のバージョンでは、すべてのビューテクノロジーに共通するELなのでしょうか?
どのように解決するのですか?
-
2002年6月。JSTL 1.0が初めてELとともに紹介されました。それは、これらの
${}
のようなもので、JSTLタグの中でしか動作しません。これは、Javabeanを呼び出すためのものです。get
メソッドを呼び出すように設計されています。 -
2003年11月 JSP 2.0 が導入され、EL は JSTL 1.0 から JSP 2.0 に移行されました。
javax.servlet.jsp.el
パッケージとなり 標準EL になりました。JSTL 1.1は、ELなしで出荷されました。現在${}
は、JSPテンプレートテキスト中のJSTLタグの外側でも動作するようになりました。 -
2004年3月。JSF 1.0が導入され 遅延 EL で
javax.faces.el
パッケージで提供されます。それは、それらの#{}
のようなもので、JSFのタグの中だけで動作するものです。標準的なJSPのELと違うのは${}
だけではない点です。get
だけでなくset
. これはマネージドビーンの自動生成や入力コンポーネントの値設定に必須でした.標準的なELの${}
はJSFの出力タグでも動作しますが、まだスコープに存在しないBeanは自動生成されませんし、入力値も設定されません。 -
2005年5月。2006 年 5 月にリリースされる新しい JSP 2.1 の準備の間、延期された EL
#{}
は、JSFから抽出され、標準ELの${}
の中にjavax.el
というパッケージがあります。その時点で、それは ユニファイドエレクトロニクス となり、JSF 1.2で導入され、後にJSP 2.1やJava EE 5の標準の一部となりました。また#{}
はJSPタグの中でも使えるようになりget
の値には使用できませんがset
の値には適用されません。また${}
はJSPでもマネージドビーンを自動生成できるようになりましたがset
の値ではありません。 -
2006年11月。JSPの後継としてFaceletsが導入されました。これは
#{}
の代わりに、JSFタグの外側のテンプレートテキストで<h:outputText>
の代わりになります。また${}
として扱います。#{}
と同じなので、Faceletsではどちらも同じ動作になります。 -
2009年12月。ELはJSP仕様から分離され、JSPとは独立した仕様として維持されることになり、最初のバージョンはEL 2.2 (JSR-245) で、JSP 2.2 と類似しています。主な新機能は、Javabeanのゲッター/セッターを呼び出すだけでなく、パラメータ化されたメソッドを内部で呼び出すことです。
#{}
構文の中で、例えば#{bean.method(argument)}
. さらに、FaceletsはJava EE 6の標準の一部となった。 -
2013年6月。EL 3.0がリリースされ、スタンドアローンのELプロセッサが付属し、プレーンなJava SEアプリケーションで使用することができるようになりました。他の主な新機能は、新しい文字列連結演算子
+=
また、ストリームやラムダ式を含むコレクションオブジェクトに対する新しい演算子->
(Java 6/7でも!)、そしてELスコープへの定数のインポートです。
関連
-
java オープンソースフレームワーク統合 Context initialization failed の共通エラー。
-
[解決済み] JSPページでサーブレットを呼び出す方法
-
[解決済み] Javaサーブレットとは?
-
[解決済み】JSP 2を使用して、JSPファイル内のJavaコードを回避するにはどうすればよいですか?
-
[解決済み】JSF、Servlet、JSPの違いは何ですか?
-
[解決済み】テンプレを簡単にするJSPの裏技?
-
[解決済み] クッキーとセッションの違い?
-
[解決済み] JSTLをインストールするには?絶対 URI: http://java.sun.com/jstl/core は解決できません。
-
[解決済み] RequestDispatcher.forward()とHttpServletResponse.sendRedirect()の比較
-
[解決済み] jsp の出力から空白を取り除く
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Serious: End event threw exception java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedM
-
java オープンソースフレームワーク統合 Context initialization failed の共通エラー。
-
[解決済み] JSPページでサーブレットを呼び出す方法
-
[解決済み] JSTLでのif-elseオプションの使用方法
-
[解決済み] クッキーとセッションの違い?
-
[解決済み] JSTLをインストールするには?絶対 URI: http://java.sun.com/jstl/core は解決できません。
-
[解決済み] 別のJSPファイルをインクルードする
-
[解決済み] RequestDispatcher.forward()とHttpServletResponse.sendRedirect()の比較
-
[解決済み] jsp の出力から空白を取り除く