[java] Thymeleaf에서 스프링 프로퍼티(property)를 어떻게 사용하나요?

Thymeleaf에서 스프링 프로퍼티를 사용하는 방법은 다음과 같습니다:

  1. 스프링 프로퍼티 파일 생성: 스프링 프로퍼티를 사용하기 위해 먼저 스프링 프로퍼티 파일을 생성해야 합니다. 일반적으로 “application.properties” 또는 “application.yml”과 같은 파일을 사용합니다. 해당 파일에 프로퍼티를 선언하고 값을 할당합니다.

  2. 프로퍼티 값 사용: Thymeleaf 템플릿에서 스프링 프로퍼티 값을 사용하기 위해, @{...} 신택스를 사용하면 됩니다. 다음은 스프링 프로퍼티를 사용하는 예시입니다:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>사용자 정보</title>
</head>
<body>
    <h1>안녕하세요, <span th:text="${user.name}"></span>님!</h1>
    <p>이메일: <span th:text="${user.email}"></span></p>
</body>
</html>

위의 예시에서 th:text 속성은 사용자의 이름과 이메일 값을 표시합니다. ${ } 안에 프로퍼티 이름을 넣어 해당 프로퍼티의 값을 가져올 수 있습니다.

  1. 컨트롤러에서 모델에 프로퍼티 추가: 프로퍼티 값을 템플릿에서 사용할 수 있도록 하려면, 컨트롤러에서 해당 값들을 모델에 추가해야 합니다. 다음은 컨트롤러에서 모델에 프로퍼티를 추가하는 예시입니다:
@Controller
public class UserController {

    @Value("${user.name}")
    private String userName;

    @Value("${user.email}")
    private String userEmail;

    @GetMapping("/user")
    public String getUser(Model model) {
        model.addAttribute("user", new User(userName, userEmail));
        return "user";
    }
}

위의 예시에서 @Value 어노테이션을 사용하여 스프링 프로퍼티 값을 필드에 주입합니다. 그리고 getUser 메소드에서 user라는 이름으로 모델에 사용자 정보를 추가합니다.

위의 세 가지 단계를 따르면 Thymeleaf에서 스프링 프로퍼티를 쉽게 사용할 수 있습니다. 스프링 프로퍼티를 활용하여 동적인 템플릿을 만들고 유지보수하기 편리한 애플리케이션을 개발할 수 있습니다.

참고자료: