1. SpEL

2. #{"표현식"}

3. ${"프로퍼티"}

4. #{${프로퍼티} + 표현식}

5. Bean 참조 가능

6. ExpressionParser

1. SpEL(Spring Expression Language)

1-1) SpEL

SpEL은 객체 그래프를 조회하거나 조작하는 기능을 제공함. 예시로 JSP에서 EL을 볼 수 있음.

스프링에서는 EL의 기능과 비슷하지만 메소드 호출을 지원하고 문자열 템플릿 기능도 제공해주는

EL이 프로젝트 전반에 걸쳐서 필요했음. 이러한 필요에 의해서 만들어진 것이 바로 SpEL이며

스프링 코어단에 추가 되었음. SpEL은 스프링 3.0부터 지원함.

1-2) SpEL 구성

ExpressionParser parser

1-3) 문법

#{"표현식}

${"프로퍼티"}

표현식은 프로퍼티를 가질 수 있지만 반대는 안 됨.

ex) #{${my.data} +1}

1-4) 실제로 어디서 쓰일까?

2. #{"표현식"}

2-1) class AppRunner

Untitled

2-2) Console

Untitled

3. ${"프로퍼티"}

3-1) AppRunner

Untitled

3-2) application.properties

Untitled

3-3) Console

Untitled

4. #{${프로퍼티} + 표현식}

4-1) 특징

표현식은 프로퍼티를 가질 수 있지만 반대는 안 됨.

4-2) class AppRunner

→ 프로퍼티 값과 표현식을 비교해서 표현할 수 있음.

Untitled

4-3) Console

Untitled

5. Bean 참조 가능

5-1) class Sample

Untitled

5-2) AppRunner

Untitled

5-3) Console

Untitled

6. ExpressionParser

6-1) class AppRunner

Untitled

6-2) Console

Untitled