Loading...
Spring Framework Reference Documentation 7.0.2의 Spring Expression Language (SpEL)의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
Spring Expression Language("SpEL"이라고 줄여 부름)은 런타임에 객체 그래프를 조회하고 조작하는 것을 지원하는 강력한 표현식 언어입니다. 이 언어 문법은 Jakarta Expression Language와 유사하지만, 특히 메서드 호출과 기본적인 문자열 템플릿 기능과 같은 추가 기능을 제공합니다.
OGNL, MVEL, JBoss EL 등 여러 Java 표현식 언어가 존재하지만, Spring Expression Language는 Spring 포트폴리오의 모든 제품에서 사용할 수 있는, 잘 지원되는 단일 표현식 언어를 Spring 커뮤니티에 제공하기 위해 만들어졌습니다. 이 언어 기능은 Spring Tools IDE 지원 내에서 코드 자동 완성을 위한 툴링 요구 사항을 포함하여 Spring 포트폴리오 내 프로젝트들의 요구 사항에 의해 주도됩니다.
그렇다고 해도, SpEL은 필요 시 다른 표현식 언어 구현을 통합할 수 있게 해 주는, 기술에 구애받지 않는 API에 기반합니다.
SpEL은 Spring 포트폴리오 내에서 표현식 평가의 기반 역할을 하지만, Spring에 직접적으로 묶여 있지 않으며 독립적으로 사용할 수 있습니다. 자체 포함되기 위해, 이 장의 많은 예제는 SpEL을 독립적인 표현식 언어인 것처럼 사용합니다. 이는 파서와 같은 몇 가지 부트스트래핑 인프라스트럭처 클래스를 생성해야 함을 의미합니다.
대부분의 Spring 사용자는 이 인프라스트럭처를 다룰 필요가 없으며, 대신 평가를 위한 표현식 문자열만 작성하면 됩니다. 이러한 전형적인 사용 예로는 Expression support for defining bean definitions에 나와 있는 것처럼 XML 또는 어노테이션 기반 빈 정의를 생성하는 데 SpEL을 통합하는 것이 있습니다.
이 장에서는 표현식 언어의 기능, 해당 API, 그리고 언어 문법을 다룹니다. 여러 곳에서 Inventor와 Society 클래스가 표현식 평가의 대상 객체로 사용됩니다. 이 클래스 선언과 이를 채우는 데 사용되는 데이터는 장 끝부분에 나열되어 있습니다.
표현식 언어는 다음 기능을 지원합니다:
Java Bean Validation
Evaluation