[java] 스프링 부트에서 JSP를 사용하는 방법

스프링 부트는 Thymeleaf, Freemarker 또는 Mustache와 같은 템플릿 엔진을 기본적으로 지원하지만, 때로는 기존의 JSP(Jakarta Server Pages)를 사용해야 하는 경우가 있습니다. 스프링 부트에서 JSP를 사용하는 방법에 대해 알아보겠습니다.

1. 의존성 추가

먼저 pom.xml 파일에 다음과 같이 spring-boot-starter-web 또는 spring-boot-starter-webflux의 의존성을 추가합니다.

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

2. JSP 의존성 추가

JSP를 사용하기 위해 추가적인 의존성이 필요합니다. pom.xml 파일에 다음을 추가합니다.

<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>

3. JSP 파일 추가

src/main/webapp/WEB-INF 디렉토리에 JSP 파일을 추가합니다.

4. 설정 추가

application.properties 파일에 다음을 추가하여 JSP 파일이 위치한 경로를 설정합니다.

spring.mvc.view.prefix: /WEB-INF/views/
spring.mvc.view.suffix: .jsp

5. 컨트롤러 작성

JSP를 랜더링할 컨트롤러를 작성합니다.

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HomeController {

    @GetMapping("/")
    public String home() {
        return "index";
    }
}

6. 실행

모든 설정이 완료되었으면 애플리케이션을 실행하고 웹브라우저에서 http://localhost:8080/로 접속하여 JSP가 정상적으로 랜더링되는지 확인하세요.

이제 당신은 스프링 부트 애플리케이션에서 JSP를 사용하는 방법을 알았습니다. 필요에 따라 JSP를 효과적으로 활용하여 웹 애플리케이션을 개발할 수 있을 것입니다.