여러분의 후원은 큰 힘이 됩니다. 기업은행 35611080101018
반응형
+Txt
View
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Good Thymes Virtual Grocery</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'J !'+ ${data}">안녕</p>
</body>
</html>
Controller
package hello.hellospring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HelloController {
@GetMapping("hello")
public String hello (Model model) {
model.addAttribute("data","hello!!"); // key : data | value : hello!!
return "hello";
}
}
++ 파라미터
View
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Good Thymes Virtual Grocery</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'J !'+ ${name}">NAME</p>
</body>
</html>
Controller
package hello.hellospring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class HelloController {
@GetMapping("hello-Mvc")
public String helloMvc (@RequestParam("name") String name, Model model) {
model.addAttribute("name",name); // key : data | value : hello!!
return "hello-template";
}
}
Controller -> ViewResolver
브라우저 요청에서의 스프링 우선순위 - Find
1. controller
2. resources / static
Controller
package hello.hellospring.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HelloController {
@GetMapping("helloA")
@ResponseBody // HTML -> Body에 직접 넣겠다.
public String helloString (@RequestParam("name") String name) {
return "hello"+name;
}
}
Get Set 단축키 : Alt + Ins
static class Hello {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Json 반환.
@GetMapping("hello-api")
@ResponseBody // HTML -> Body에 직접 넣겠다.
public Hello helloApi ( @RequestParam("name") String name ) {
Hello hello = new Hello();
hello.setName(name);
return hello;
}
Controller -> HttpMessageConverter
문자 : StringHttpMessageConverter
객체 : MappingJackson2HttpMessageConverter
@ResponseBody 사용 시 ViewResolver 대신 위와 같이 동작한다.
반응형