Spring Thymeleaf th:object 식
선택된 객체에 대해서 th:object="${object}" 이하의 태그에 대해 *{...}로 표기할 수 있음
컨트롤러
package com.oraclejava.springboot;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class HelloController {
@RequestMapping("/")
public ModelAndView hello(ModelAndView mav) {
mav.setViewName("index");
mav.addObject("msg", "Hello!");
PersonInfo personInfo = new PersonInfo(123, "damansa1", "damansa1@naver");
mav.addObject("person", personInfo);
return mav;
}
}
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1 th:text="${msg}"></h1>
<table th:object="${person}">
<tr><th>ID</th><td th:text="*{id}"></td></tr>
<tr><th>Name</th><td th:text="*{name}"></td></tr>
<tr><th>Email</th><td th:text="*{email}"></td></tr>
</table>
</body>
</html>
package com.oraclejava.springboot;
public class PersonInfo {
private int id;
private String name;
private String email;
public PersonInfo() {
}
public PersonInfo(int id, String name, String email) {
this.id = id;
this.name = name;
this.email = email;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}