[Spring boot] Spring boot에서 Thymeleaf 사용

2020. 2. 23. 10:51·Backend/Spring

 

 

Spring boot로 회사 프로젝트를 진행하였다. 기존 코드가 있는 상황이었던 터라 설정은 건드리지 않았었다.

집에서 따로 Spring boot 템플릿 엔진을 타임리프로 무언가를 만드려던 중 설정에서 막혀버렸다 ;_;

이거 하나 해결하는데도 쪼렙 개발자는 상당 시간을 투자했다.

 

그래서 오늘은 내가 해결한 Spring boot 템플릿엔진으로 타임리프를 사용하는 방법을 포스팅한다.

 

 

 

 


 

1. dependency 추가

 

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-thymeleaf</artifactId>

</dependency>

 

 

 

2. application.properties

 

spring.thymeleaf.cache=false
spring.thymeleaf.enabled=true
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html

 

 

1) spring.thymeleaf.cache

false로 해놓았을 때 타임리프를 수정하고 서버를 재시작할 필요 없이 새로 고침만으로 반영이 된다.

(서버 재시작을 안 해도 되어 매우 편리하다!)

개발할 때는 false로 두고 반영 시에는 true로 설정해놓는 게 좋다.

 

 

2) spring.thymeleaf.enabled

타임리프를 사용하겠다는 뜻이다.

당연히 true로 설정해둔다.

 

 

3) spring.thymeleaf.prefix

경로를 잡아준다.

나의 경우 'classpath:/templates/'로 설정해둔 게 보인다.

혹시 몰라 프로젝트 구조를 같이 첨부해두겠다.

resources 폴더 밑 templates 폴더가 보이고 그 밑으로 html 파일이 있는 것을 확인할 수 있다.

 

 

4) spring.thymeleaf.suffix

나는 html을 사용했기 때문에 '. html'로 설정해두었다.

만일 jsp를 사용한다면 '. jsp'를 입력해주면 되겠다.

 

 

 

3. ViewResolver

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Configuration
@EnableWebMvc
public class ViewConfig extends WebMvcConfigurerAdapter {
    @Bean
    public ViewResolver getViewResolver() {
        InternalResourceViewResolver resolver = new InternalResourceViewResolver();
        resolver.setPrefix("classpath:/templates/");
        resolver.setSuffix(".html");
        return resolver;
    }
    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();
    }
}
 

java 폴더 밑으로 config 폴더를 만들어 안에 ViewResolver 파일을 만들어준다.

'Backend > Spring' 카테고리의 다른 글

[Spring boot] DBCP(DataBase Connection Pool)  (0) 2020.03.08
[Spring boot] Spring boot와 MySQL 연동하기.  (0) 2020.02.24
[Spring boot] 정적 리소스 사용  (0) 2020.02.23
[Spring] @Pattern 체크 시 필수값이 아닐 때  (0) 2020.02.23
[Spring] lombok 설치  (0) 2020.02.23
'Backend/Spring' 카테고리의 다른 글
  • [Spring boot] Spring boot와 MySQL 연동하기.
  • [Spring boot] 정적 리소스 사용
  • [Spring] @Pattern 체크 시 필수값이 아닐 때
  • [Spring] lombok 설치
나는 유찌
나는 유찌
쩌리쨩
  • 나는 유찌
    유찌 개발 일기
    나는 유찌
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 사이드 프로젝트
        • 게시판
        • 블로그(Spring boot + React.js ..
      • 데이터베이스
        • SQLD
      • 이슈 해결
      • Front
        • Javascript
        • Vue.js
        • HTML+CSS
      • Backend
        • Spring
        • ORM
        • JAVA
      • 공부
        • HTTP
        • OOP
        • 이것저것
        • 코딩테스트 | 알고리즘
      • Computer Science
        • Computer architecture
        • 데이터베이스
        • 운영체제
      • 일상
        • 독서
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    access token
    role scope
    추리소설
    jwt 로그인 구현
    mysql 격리수준
    phantom read
    AccessDecisionVoter
    spring 격리수준
    Kotlin AccessDecisionManager
    Access token 재발급
    spring
    DIRTY READ
    Kotlin AntPathMatcher
    redis 분산락
    pessimisticlock
    한국소설
    웹 개발
    히가시노 게이고
    AntPathMatcher
    독서
    Spring Boot
    jwt
    Spring Security AccessDecisionManager
    refresh token
    권한 scope 처리
    JWT이란?
    LeetCode
    Access Token Refresh Token
    mssql
    Spring boot에서 JWT 구현
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
나는 유찌
[Spring boot] Spring boot에서 Thymeleaf 사용
상단으로

티스토리툴바