본문 바로가기

SSR/Thymeleaf5

Thymeleaf (5) 타임리프는 스프링 없이도 동작하지만 스프링과 통합을 위한 다양한 기능을 제공해주는데, 이러한 부분이 스프링으로 백엔드를 개발하는 개발자가 자연스레 접근하는 계기가 된다. 기본 매뉴얼: https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html 스프링 통합 매뉴얼: https://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html Tutorial: Thymeleaf + Spring Preface This tutorial explains how Thymeleaf can be integrated with the Spring Framework, especially (but not only) Spring MV.. 2022. 1. 5.
Thymeleaf (4) 자바스크립트 인라인 타임리프는 자바스크립트에서 타임리프를 편리하게 사용할 수 있는 자바스크립트 인라인 기능을 제공한다. 자바스크립트 인라인이란 별도의 자바스크립트 파일을 import 해서 사용하는 것이 아닌 html의 더 멋진 것은 무엇일까? 자바스크립트 객체를 만들어 넣을 수 있다는 것이다. 자바스크립트 인라인 사용 전에는 자바스크립트 문법이 틀려 실행되지 않는다. 문자열은 ", ' 로 감싸주어야 하고, 내추럴 템플릿으로 실행할 수 없으며, 유저 객체는 toString이 찍힌다. 이러한 다양한 문제를 해결하기 위해 toString을 재정의하고, 쿼테이션을 생성해 문자열인 경우에는 붙여주고 숫자인 경우는 그냥 찍도록 분기하는 이러한 모든 코드를 작성하는 것은 많은 시간과 노력이 들어간다. 자바스크립트 인.. 2022. 1. 5.
Thymeleaf (3) 속성 값 설정 타임리프 태그 속성(Attribute) 타임리프는 주로 HTML 태그에 th:* 속성을 지정하는 방식으로 동작한다. th:* 로 속성을 적용하면 기존 속성을 대체한다. 기존 속성이 없으면 새로 만든다. - input 태그의 name속성의 값을 "hi"로 설정한 후 th:name ="test"라는 타임리프의 속성을 지정했다면 최종 결과 값은 다음과 같이 렌더링 된다. 속성 추가 속성의 이름을 변경하는 것 말고도 속성을 추가하는 일도 빈번하게 발생한다. 타임리프는 th:attrappend로 속성을 추가할 수 있다. 여기서 주의할 점은 타임리프의 attrappend="class=' large'" 작은 따옴표를 사용했다는 점이다. 또한 한 칸 띄웠다는 점이다. th:attrappend는 뒤에 붙지.. 2022. 1. 4.
Thymeleaf (2) ◦ 링크 URL 표현식: @{...} 타임리프에서 태그의 location.href 속성에 많이 사용하는 URL 링크에는 별도의 표현식이 존재한다. URL 링크 basic url hello queryparam path variable path variable + query parameter - th:href= " @{ ( param1=${param1}, param2=${param2} ) } " 쿼리 파라미터를 붙여주는데 콤마(,)로 구분해 여러 개를 제공할 시 자동적으로 &으로 변환되어진다. - th:href= " @{ /hello/{param1}( param1=${param1}, param2=${param2} ) } " 이 경우는 param2의 값이 남는데, 남은 param2는 쿼리 파라미터로 넘어가게 .. 2022. 1. 4.
Thymeleaf (1) 자바의 웹 애플리케이션 레거시 프로젝트의 특징은 JSP를 활용하여 프론트, 백엔드 구분 없이 개발자가 전부 웹 개발을 진행한다는 점이다. 요즘은 전문적인 웹 클라이언트 사이드 렌더링 기술을 적극적으로 활용하는 웹 클라이언트 프레임워크, 혹은 라이브러리인 리액트나, 뷰, 앵귤러를 많이 사용한다. 간단한 웹 애플리케이션을 개발할 때 해당 웹 클라이언트 프레임워크 기술을 적용하여 개발하면 베스트이지만 웹 클라이언트 프레임워크는 정말 전문적인 영역으로 쉽게 접근할 수 없다는 점이다. 성능 최적화, 컴포넌트화, 타입 스크립트, 모듈화, 번들링.. 점점 쉽게 다가갈 수 없는 환경으로 이루어지기 때문에 기존 JSP로 서버사이드에서만 개발하던 개발자들이 해당 기술을 활용하려면 시간과 노력이 필요하다. 간단한 웹 애플리.. 2022. 1. 3.