
Thymeleaf
th:text
@RequestMapping("memberList")
@Controller
public class MyController {
@GetMapping("member")
public String memberInfo(Model model) {
Member member = new Member("John", 29);
model.addAttribute("member", member);
return "main/information";
}
@Data
static class Member {
private String name;
private int age;
public Member(String name, int age) {
this.name = name;
this.age = age;
}
}
}
타임리프의 text 기능을 활용해 위 컨트롤러에서 html로 값을 가져와보겠다.
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>text</title>
</head>
<body>
<ul>
<h1>Name</h1>
<li>방법1 = <span th:text="${member.name}"></span></li>
<li>방법2 = <span th:text="${member['name']}"></span></li>
<li>방법3 = <span th:text="${member.getName()}"></span></li>
<h1>Age</h1>
<li>방법1 = <span th:text="${member.age}"></span></li>
<li>방법2 = <span th:text="${member['age']}"></span></li>
<li>방법3 = <span th:text="${member.getAge()}"></span></li>
</ul>
</body>
</html>
text로 값을 가져오는 방법은 세 가지이나, 그 결과는 같다.
기본적으로 ${...} 방법을 따르며, 간단하니 위 코드를 참고하면 이해가 될 것이다.
실행시켜보자.
세 가지 방법 모두 동일한 결과를 확인할 수 있다.
th:text 생략
th:text를 생략하는 방법도 있다.
text가 필요 없는만큼 th:를 위한 별도의 태그를 만들 필요 없다는 점이 특징이다.
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>text</title>
</head>
<body>
<ul>
<h1>Name</h1>
<li>방법1 = [[${member.name}]]</li>
<li>방법2 = [[${member['name']}]]</li>
<li>방법3 = [[${member.getName()}]]</li>
<h1>Age</h1>
<li>방법1 = [[${member.age}]]</li>
<li>방법2 = [[${member['age']}]]</li>
<li>방법3 = [[${member.getAge()}]]</li>
</ul>
</body>
</html>
타임리프의 가장 간단한 text 기능을 알아보았다.
끝
'스프링 > Thymeleaf' 카테고리의 다른 글
[Thymeleaf] URL에 파라미터 담아 전달하기 (0) | 2022.11.25 |
---|---|
[Thymeleaf] 다양한 연산자 (2) | 2022.09.23 |
[Thymeleaf] html -> html 다이렉트로 파라미터 값 전달하기 (0) | 2022.09.22 |