recources/static/hello-static.html
@Controller
public class HelloController {
@GetMapping("hello-mvc")
public String helloMvc(@RequestParam("name") String name, Model model) {
model.addAttribute("name", name);
return "hello-template";
}
}
💡 Parameter Info 단축키 | IntelliJ : `Command` + `P`, Eclipse : `Ctrl` + `Shift` + `Space`
resources/template/hello-template.html
<html xmlns:th="http://www.thymeleaf.org">
<body>
<p th:text="'hello ' + ${name}">hello! empty</p>
</body>
</html>
태그 안쪽 내용은 text=”” 안쪽 내용과 치환 된다. (서버 없이 내용 확인용)
@Controller
public class HelloController {
@GetMapping("hello-string")
@ResponseBody
public String helloString(@RequestParam("name") String name) {
return "hello " + name;
}
}
@Controller
public class HelloController {
@GetMapping("hello-api")
@ResponseBody
public Hello helloApi(@RequestParam("name") String name) {
Hello hello = new Hello();
hello.setName(name);
return hello;
}
static class Hello {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
클라이언트의 HTTP Accept 헤더와 서버의 컨트롤러 반환 타입 정보툴을 조합해서 HttpMessageConverter 가 선택된다.
💡 IntelliJ 생성 단축키 : Command
+ N
, Ctrl
+ Enter
(getter / setter)