[java] Thymeleaf에서 HTML 태그를 동적으로 생성하는 방법은 무엇인가요?

Thymeleaf는 자바 템플릿 엔진으로서, HTML 페이지에서 동적으로 태그를 생성하는 기능을 제공합니다. 이를 통해 서버 사이드에서 동적 콘텐츠를 만들거나, 사용자의 입력에 따라 다른 HTML 구조를 생성할 수 있습니다.

Thymeleaf에서 HTML 태그를 동적으로 생성하는 방법은 다음과 같습니다:

  1. 템플릿에서 <div> 태그를 생성해야 하는 경우:

    <div th:if="${condition}">Content Goes Here</div>
    

    위의 예제에서 ${condition}은 조건문을 통해 해당 조건이 참일 경우에만 <div> 태그를 생성한다는 의미입니다.

  2. 반복문을 통해 동적으로 태그를 생성해야 하는 경우:

    <ul>
      <li th:each="item : ${items}" th:text="${item}"></li>
    </ul>
    

    위의 예제에서 ${items}는 반복문을 통해 리스트의 각 항목을 나타내며, 이를 통해 <li> 태그를 동적으로 생성합니다.

  3. 동적으로 생성된 태그에 속성을 추가해야 하는 경우:

    <div th:class="${condition} ? 'active' : 'inactive'">Content Goes Here</div>
    

    위의 예제에서 th:class 속성은 ${condition}에 따라 동적으로 active 또는 inactive 클래스를 추가합니다.

Thymeleaf를 사용하면 HTML 파일에서 동적 콘텐츠를 생성하고 조작하는 작업이 용이해집니다. 이를 통해 더 유연하고 동적인 웹 애플리케이션을 개발할 수 있습니다.


참고 자료: