I.K.Picture & IT Info.

[spring] Spring boot에서의 thymeleaf 재시작 없이 HTML 소스코드 반영 본문

Development/Java/Android

[spring] Spring boot에서의 thymeleaf 재시작 없이 HTML 소스코드 반영

helpful-intruder 2018. 8. 2. 14:17
반응형

Spring Boot의 탬플릿 엔진인 Thymeleaf를 사용할 때 아무런 설정 없이 진행을 하면


Java쪽 소스코드를 변경할 때 뿐만 아니라 HTML 소스를 변경할 때도 매번 서버를 재시작해야되는 불편한점이 있는데요.


그럴 때 HTML 쪽 부분과 JavaScript 부분에 대해서는 개발을 진행할 때 재시작없이 바로 반영할 수 있는 

설정을 정리해보고자 합니다.


참고사항으로 저 같은 경우에는 IDE는 Intellij 를 사용하여 개발을 진행 중에 있습니다. 


아주~ 간단합니다. 


application.properties에 다음과 같이 추가해주면 됩니다 :)


project.base-dir=file:////data/git/test

spring.thymeleaf.prefix=${project.base-dir}/src/main/resources/templates/

spring.thymeleaf.cache=false 


spring.resources.static-locations=${project.base-dir}/src/main/resources/static/

spring.resources.cache-period=0



간단하지만 한 줄 한 줄 설명을 해볼께요

일단 

 project.base-dir 

   > 말 그대로 프로젝트 파일에 대한 실제 위치입니다.

      리눅스의 경우 file:/// 뒤에 /를 추가로 붙여 실제 위치를 작성하면되구요 (위처럼요)

      윈도우의 경우 file:/// 뒤에 바로 드라이브 명을 작성 후  C:/.../.../   작성하면됩니다. (C드라이브라고 했을 경우 예)

 spring.thymeleaf.prefix

   > 템플릿 HTML이 포함된 URL 입니다. 특별한 경우 아니면 변경할 필요 없습니다.

 spring thymeleaf.cache

   > 이 부분이 실제 설정하는 부분입니다. false로 해야 반영이 바로바로 됩니다.


 spring.resource.static-locations

   > 정적 파일(javascript, css 등)이 포함된 url 입니다. 이것도 특별한 경우 아니면 변경 필요 없습니다.

 spring.resource.cache-period

   > 0 부분으로 해야 바로 반영됩니다. 



만약 이 방법을 했을 때 되지 않는다면 다른 의심보다는 spring boot 기본 설정파일인 application.properties가 

읽히지 않는 것이니 이 부분을 제일 먼저 의심하세요~

반응형
Comments