본문 바로가기

Java/Spring

SpringBoot JSP View 설정하기

JSP의 위치 

src/main/webapp/WEB-INF/jsp


기존 SpringBoot는 src/main/resources/teamplates에 타임리프가 들어가면 간단하게 조회된다.


그렇다면 JSP는 위치가 다른데 어떻게?


1. gradle, maven이면 디펜던시를 추가해야한다.


gradle의 경우

compile("javax.servlet:jstl")

compile("org.apache.tomcat.embed:tomcat-embed-jasper")

- 필요하다면 버전을 추가한다, 필자의 경우 springboot 플러그인으로 알아서 버전을 찾아준다.


maven의 경우

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>jstl</artifactId>

</dependency>

<dependency>

<groupId>org.apache.tomcat.embed</groupId>

<artifactId>tomcat-embed-jasper</artifactId>

</dependency>

- maven도 마찬가지로 버전이 필요하면 추가한다.




2. 자바 설정 혹은 application.properties에 경로를 지정한다.

@Configuration

public class SpringConfig extends WebMvcConfigurerAdapter {

@Bean

public ViewResolver getViewResolver() {

InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();

viewResolver.setPrefix("/WEB-INF/jsp/");

viewResolver.setSuffix(".jsp");

return viewResolver;

}

}


혹은


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

spring.mvc.view.suffix: .jsp




참고)


시작점 코드(com.mysample.root)

@SpringBootApplication

public class Application {

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

}


@SpringBootApplication에는 

@EnableAutoConfiguration

@ComponentScan이 포함되어 자동으로 하위  package 경로(com.mysample.root이하)는 자동으로 읽는다.

  • 오지훈 2018.02.22 16:30 댓글주소 수정/삭제 댓글쓰기

    저랑같은증상을 찾던중 감사합니다. 제증상은 webapp은 잘찾고 그래서 잘했는데 jar로 압축하니 해당파일없어서 찾는도중에 저렇게 하면되는걸 알고 로컬에서 해보고 잘 되서 아 됫다 했는데...... 해당내용으로 해서 jar를 build한 후 aws서버에올리면 또 white label 에러 404가 나는데 로컬에서는 잘되는데 도무지 이유를 알 수가없습니다 ㅠㅠ..