ํด๋น ๋ด์ฉ์ ๊ณต๋ถ์ ๋ชฉ์ ์ผ๋ก ๊ธฐ๋ก๋์์ผ๋ฉฐ,
์๋ ๋ด์ฉ์ ๋ชจ๋ ๊ตฌ๊ธ ๊ฒ์์ผ๋ก ๊ณต๋ถ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ฑํ์ต๋๋ค.
์ด์ฌํ ๋ฐฐ์ฐ๋ ์ค์
๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
๐ Model๊ณผ ModelAndView
Model
ํ๋ผ๋ฏธํฐ ๋ฐฉ์์ผ๋ก ๋ฉ์๋์ (Model model) ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฃ์ด์ฃผ๊ณ String ํํ๋ก ๋ฆฌํดํ๋ค.
Model์ ๊ฐ์ ๋ฃ์ ๋ addAttribute()๋ฅผ ์ฌ์ฉํ๋ค.
Model ์์
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.ui.Model;
@Controller
RequestMapping("/model")
public String Model(Model model)
{
model.addAttribute("name", "ํ๊ธธ๋");
return "model";
}
ModelAndView
์ปดํฌ๋ํธ ๋ฐฉ์์ผ๋ก ModelAndView ๊ฐ์ฒด๋ฅผ ์์ฑํด์ ๊ฐ์ฒดํํ๋ก ๋ฆฌํดํ๋ค.
๊ฐ์ ๋ฃ์ ๋ addObject()๋ฅผ ์ฌ์ฉํ๊ณ , View๋ฅผ ์ค์ ํ ๋ setViewName()์ผ๋ก ์ฌ์ฉํ๋ค.
ModelAndView ์์
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping("/modelAndView")
public ModelAndView testModelAndView()
{
ModelAndView mv = new ModelAndView();
mv.addObject("name", "ํ๊ธธ๋");
mv.setViewName("/modelAndView");
return mv;
}
๐ ์์ฆ์..
Spirng MVC๊ฐ @Controller annotation์ ์ง์ํ๊ธฐ ์์ํ ์ดํ๋ก ModelAndView๋ ์ ์ฌ์ฉํ์ง ์๋๋ค๊ณ ํ๋ค.
๋์ฒด ๋ฐฉ์ | @GetMapping
@GetMapping ์ด๋
ธํ
์ด์
์ ์ฌ์ฉํ์ฌ GET ์์ฒญ์ ๋ํ ํธ๋ค๋ฌ ๋ฉ์๋๋ฅผ ์ ์ํ๋ค.
๋ฉ์๋์ ๋ฐํ ๊ฐ์ผ๋ก๋ View ์ด๋ฆ์ธ "chat"์ ์ง์ ๋ฐํํ๊ณ , ViewResolver์ ์ํด "chat"๋ผ๋ ์ด๋ฆ์ View๊ฐ ์ฐพ์์ ธ์ ๋ธ๋ผ์ฐ์ ์ ๋ฐํ๋๋ค.
์ด ๋ฐฉ์์ ์ฝ๋๊ฐ ๊ฐ๊ฒฐํด์ง๊ณ ๊ฐ๋
์ฑ์ด ์ข์์ง๋ ์ฅ์ ์ด ์๋ค.
@GetMapping ์์
@Controller
public class MainController {
@GetMapping("/chat")
public String chat() {
return "chat";
}
}
์ถ์ฒ | IsBerry