[스프링] 스프링 EL 레거시 프로젝트에서의 적용

스프링 표현 언어(EL)은 HTML, JSP, XML 등에서 스프링 빈 및 기타 데이터를 쉽게 접근할 수 있는 강력한 기능을 제공합니다. 이는 JSP 외에도 스프링 컨텍스트 설정 파일에서도 사용할 수 있어 레거시 또는 이전 버전의 프로젝트에도 적용할 수 있는 장점이 있습니다.

스프링 EL의 주요 기능

  1. 빈 (Bean) 속성, 매소드, 컬렉션에 대한 접근
  2. 연산자 및 조건문 사용
  3. 프로퍼티 파일과의 통합
  4. 시스템 환경 변수와의 통합


레거시 프로젝트에 스프링 EL 적용하기

1. 의존성 추가

스프링 EL을 레거시 프로젝트에 적용하기 위해 프로젝트의 의존성에 spring-web 모듈을 추가해야 합니다.

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>{최신 버전}</version>
</dependency>

2. 설정 추가

web.xml 파일에 스프링 EL을 활성화할 수 있는 설정을 추가합니다.

<web-app>
   <jsp-config>
      <jsp-property-group>
         <url-pattern>*.jsp</url-pattern>
         <el-ignored>false</el-ignored>
      </jsp-property-group>
   </jsp-config>
</web-app>

3. 사용 예시

스프링 EL을 사용해보겠습니다. JSP 파일에서는 ${} 구문을 사용하여 스프링 빈 및 프로퍼티 파일의 값에 쉽게 접근할 수 있습니다.

<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<spring:eval expression="book.price * 0.9" />

4. 주의사항

스프링 EL을 사용할 때는 보안상의 이슈에 주의해야 합니다. 사용자 입력을 그대로 EL에 삽입하면 인젝션 공격에 취약해질 수 있습니다. 반드시 안전한 방식으로 사용해야 합니다.


스프링 표현 언어는 레거시 프로젝트에서도 잘 동작하며, 빠르게 개발을 진행할 수 있는 강력한 기능을 제공합니다. 지금 바로 프로젝트에 적용해보세요!