EL
7330 ワード
表現言語とは何ですか。
表示言語(Expression Language)は、値を表すスクリプト言語であり、JSPの基本構文を補完する役割を果たす.
言語が提供する機能を表す
JSPのScopeに一致する属性の使用
コレクション・オブジェクトへのアクセス方法の提供
数値、リレーションシップ、論理演算子の指定
Javaクラスメソッド呼び出しの提供
表示言語のみの組み込みオブジェクトの提供
言語を表す表現方法
プレゼンテーション言語のデフォルトオブジェクト
// 객체 사용예시
<%
pageContext.setAttribute("p1", "page scope value");
request.setAttribute("r1", "request scope value");
%>
Page Scope : {$pageContext.p1}
Request Scope : {$requestContext.r1}
// 겹치지 않는 경우 변수명만 사용해도 가능
// 겹치는 경우 작은 scope부터 찾는다
Page Scope : {$p1}
Request Scope : {$r1}
// 출력 화면
Page Scope : page scope value
Request Scope : request scope value
Page Scope : page scope value
Request Scope : request scope value
プレゼンテーション言語でのデフォルトオブジェクトの使用例
言語を表すデータ型
ブールタイプ-trueとfalse
整数タイプ-0~9の間の整数の負の値に「-」が加算されます.
実数タイプ-0から9で構成され、3.24 e 3のような小数点(".")で表すことができます.
文字列タイプ:引用符("または")を含む文字列.一重引用符(")で表される場合、値に含まれる小数引用符は、"(")などとともに使用する必要があります.
記号自体はで表されます.
空のタイプ-null
オブジェクト・アクセス・ルール
1または2がnullである場合はnullを返します.
表示1がMapの場合、表示2をキーとする値が返されます.
1がListまたは配列である場合、2が整数である場合、その整数の2番目のインデックスに対応する値が返されます.
1がオブジェクトであることを示すと、2を表すgetterメソッドを呼び出す結果が返されます.
演算子
数値演算子
+:加算
-:減算
*:乗算
/またはdiv:除算
%またはmod:残り
数値以外のオブジェクトと数値演算子を使用する場合は、オブジェクトを数値に変換して演算子を実行します:${"10"+1}→${10+1}
数値に変換できないオブジェクトを数値演算子と一緒に使用すると、エラーが発生します:${"列"+1}→エラー
数値演算子で使用するオブジェクトがnullの場合、0:${null+1}→${0+1}に処理されます.
比較演算子
==またはeq
!= または
<またはgt
>またはgt
<=またはle
>=またはge
文字列比較:${str=="値"}str.compareTo("値")=0と同じ
論理演算子
&または
||or
! またはいいえ
// 연산자 예시
<%
request.setAttribute("k", 10);
request.setAttribute("m", true);
%>
k + 5 : ${ k + 5 } <br>
k / 5 : ${ k div 5 } <br>
k > 5 : ${ k > 5 } <br>
m : ${ m } <br>
!m : ${ !m } <br>
// 출력 화면
k + 5 : 15
k / 5 : 3
k > 5 : true
m : true
!m : false
Null演算子、比較選択演算子{{Nullえんざんし:ひかくせんたくえんざんし}}
演算子の優先度
[] .
()
-(単一)no!empty
*/div % mod
+ -
< > <= >= lt gt le ge
== != eq ne
&& and
|| or
? :
無効表現言語:JSPで指定
<%@ page isELIgnored = "true"%>
ソース:https://www.boostcourse.org/web316/lecture/254288/?isDesc=false
Reference
この問題について(EL), 我々は、より多くの情報をここで見つけました https://velog.io/@csct3456/ELテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol