thymeleaf

타임리프가 제공하는 입력 폼 기능을 적용해서 프로젝트의 폼을 효율적으로 보내본다.th:object 커맨드 객체를 지정하기 앞서 해당 오브젝트 정보를 뷰 보낼 때 함께 넘겨줘야 한다.@GetMapping("/add")public String addForm(Model model) { model.addAttribute("item", new Item()); return "form/addForm";} th:object를 통해 에서 사용할 객체를 지정한다. 상품명 가격 수량  ${item.itemName}을 선택 변수식을 사용하여 *{itemName}으로 작성할 수 있다.th:fiel..
타임리프는 주로 HTML 태그에 th:*속성을 지정하는 방식으로 동작한다.th:*로 속성을 적용하면 기존 속성을 대체하거나 새로 만든다.//렌더링 전//렌더링 후
타임리프는 문자, 숫자, 날짜, URI 등을 편리하게 다루는 다양한 유틸리티 객체를 제공한다. 🔗 타임리트 유틸리티 객체 Tutorial: Using Thymeleaf  @GetMapping("/date")public String date(Model model) { model.addAttribute("localDateTime", LocalDateTime.now()); return "basic/date";} URL을 생성할 때는 @{...}를 사용한다.@GetMapping("/link")public String link(Model model) { model.addAttribute("param1", "data1"); model.addAttribute("param2", "data2"); re..
타임리프의 기본 표현식을 정리한다.//변수 표현식${...}//선택 변수 표현식*{...}//메시지 표현식#{...}//링크 URL 표현식@{...}//리터럴 대체|wow ${data}| 타임리프의 가장 기본 기능은 텍스트를 출력하는 기능이다. HTML 태그 속성이 아니라 HTML 콘텐츠 영역 안에서 직접 데이터를 출력하고 싶다면 다음과 같이 사용하면 된다.[[${data}]] 태그 효과도 포함하여 출력하고 싶을 경우[(${data})] th:with를 사용하면 지역 변수를 선언해서 사용할 수 있다. 처음 사람의 이름은   🔗 강의 링크https://inf.run/GMo43
Thymeleaf layout dialect Thymeleaf 내의 코드 재사용을 위해 레이아웃과 재사용이 가능한 템플릿을 구축할 수 힜는 오픈소스 라이브러리 build.gradle 의존성 추가 implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.0.0' 폴더 구조 templates는 Thymeleaf가 지정한 최상위 폴더이다. templates > fragments는 모든 페이지에 공통적으로 출력되는 header, footer, config 등을 구성한다. templates > layouts는 fragment..
웹( SpringBoot, Thymeleaf) 만들던 중 이미지를 상대경로 작성함에 있어서 엑박이 계속 뜨는 바람에 삽질을 했다. 작성하던 html은 templates > main에 있고 이미지는 static > img에 있었다. 그래서 당연히 templates에서 static까지 이동하기 위해 아래와 같이 작성했다. 여기서 간과한 것이 타임리프를 사용하면 resources > static 까지는 자동으로 이동한다. 따라서 static 이후 경로만 작성하면 된다. 나의 귀여운 강아지가 다시 나왔다.
지구용사
'thymeleaf' 태그의 글 목록