2009-08-21 6 views
4

EL (Expression Language)을 사용하여 .jsp 파일 내에서 Java Bean의 객체를 사용할 수 있습니다. 따라서 $ {foo.bar}를 입력하여 가치를 얻을 수 있습니다. 하지만 # {foo.bar}도 사용할 수 있습니다.

누구나 차이점을 설명하거나 의미있는 정보를 제공 할 수 있습니까?

답변

6

#{foo.bar} 구문은 JSF 표현식 언어입니다. 일부 밝은 점은 JSP EL에 다른 구문 (예 : ${foo.bar})을 사용하는 것이 좋습니다. 일부 JSP 컨테이너는이 칵테일에 관대하며 두 가지 중 하나를 사용할 수 있다고 생각합니다.

+0

그래서 나는 언제든지 $ {...}을 사용할 수 있고 # {...}은 동일한 기능을 가지고 있음을 의미하는 JSF를 사용할 경우에만 # {...}을 사용할 수 있습니다. 밝은 불꽃 : D 고마워;) – Marcus

+0

JSF는 처음부터 무시 무시한 혼란을 겪었고 그 이후로 계속 균열을 극복하려고 노력해 왔습니다. – skaffman

+0

좋습니다 ...하지만 왜 엉망입니까? 나는 그것에 익숙하지 않기 때문에 나는 그것에 대해 많은 경험이 없다;) – Marcus

17

이 내용은 JSP 2.1 spec에 있습니다. 자바 EE에서

#{expr}연기 평가즉시 평가에 대한 ${expr}에 사용됩니다. 지연된 표현식 ( #{expr})은이를 허용하는 태그 속성에서만 사용할 수 있습니다. 이것은 Java EE 규칙이지만 다른 도메인에서는 자신의 의미를 부여 할 수 있습니다 (예 : use EL in your own templates).

+0

아하, 흥미 롭다. 나는 그 사실을 몰랐다. +1 – skaffman

관련 문제