
Spring boot 3버전부턴 자바 17버전 이상만 가능하며 버전이 업그레이드되면서 java EE -> jakarta EE로 교체되었다.
jakarta EE로 교체되면서 이전버전에 사용하던 용어 또한 많은 부분이 바뀌었기 때문에 그에 맞춰 jsp 설정을 해보도록 하겠다.
IDLE : intellij IDEA 2023.1
Java : java 19
Spring boot: Gradle - groovy ver. 3.1.2
dependencies {
...
implementation 'org.apache.tomcat.embed:tomcat-embed-jasper'
implementation 'jakarta.servlet:jakarta.servlet-api'
implementation 'jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api'
implementation 'org.glassfish.web:jakarta.servlet.jsp.jstl'
...
}
이전버전의 javax.servlet, jstl은 사용못하기 때문에 해당 의존성들을 수정해준다.
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
# 재실행 없이 jsp 수정
server.servlet.jsp.init-parameters.development=true
Controller에서 리턴될 String 값의 prefix, suffix를 지정해 줘야 하며 jsp수정 시 재실행없이 바로 반영되도록 development를 true로 선언한다.
(이때 prefix정보앞의 기본 루트 정보는 프로젝트/src/main/webapp이다.)
spring boot 프로젝트 생성 시 webapp폴더가 없기에
webapp / WEB-INF / views Directory를 생성 후 하위에 .jsp파일을 생성해준다.

테스트 시, controller와 jsp간의 연결이 잘 되는 것을 확인할 수 있다.
