2022_03_01 - oneso123456789/2022 GitHub Wiki
other
10.2.3 ์กฐํ ์ฒ๋ฆฌ์ ํ ์คํธ p217
๋ฑ๋ก์ฒ๋ฆฌ์ ์ ์ฌํ๊ฒ ์กฐํ ์ฒ๋ฆฌ๋ BoardController๋ฅผ ์ด์ฉํด์ ์ฒ๋ฆฌํ ์ ์์
ํน๋ณํ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด ์กฐํ๋ GET ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํ๋ฏ๋ก, @GetMapping์ ์ด์ฉํจ
com.crow.controller.BoardController ํด๋์ค์ ์ผ๋ถ
@GetMapping("/get")
public void get(@RequestParam("bno") Long bno, Model model) {
log.info("BoardController /get");
model.addAttribute("board", service.get(bno));
}
BoardController์ get() ๋ฉ์๋์๋ bno ๊ฐ์ ์ข ๋ ๋ช
์์ ์ผ๋ก ์ฒ๋ฆฌํ๋ @RequestParam์ ์ด์ฉํด์ ์ง์ ํจ
(ํ๋ผ๋ฏธํฐ ์ด๋ฆ๊ณผ ๋ณ์ ์ด๋ฆ์ ๊ธฐ์ค์ผ๋ก ๋์ํ๊ธฐ ๋๋ฌธ์ ์๋ตํด๋ ๋ฌด๋ฐฉํจ)
๋ํ ํ๋ฉด ์ชฝ์ผ๋ก ํด๋น ๋ฒํธ์ ๊ฒ์๋ฌผ์ ์ ๋ฌํด์ผ ํ๋ฏ๋ก Model์ ํ๋ผ๋ฏธํฐ๋ก ์ง์ ํจ
์กฐํ์ ๋ํ ํ ์คํธ ์ฝ๋๋ ์๋์ ๊ฐ์ด ์์ฑ
com.crow.controller.BoardControllerTests ํด๋์ค์ ์ผ๋ถ
@Test
public void testGet() throws Exception{
log.info(mockMvc.perform(MockMvcRequestBuilders.get("/board/get")
.param("bno", "51"))
.andReturn()
.getModelAndView().getModelMap());
}
์์ฑ์ค mapping์ ์ฐพ์์ ์๋ค๋ ์ค๋ฅ๊ฐ ์ผ๊ธฐ๋จ ๋ฉ์๋๋ฅผ ๋น ๋ฉ์๋๋ก ์ ์ธํด ์คํ ์ด๋ ธํ ์ด์ ๋ถํฐ ์ ์ธํด์ฃผ์
ํน์ ๊ฒ์๋ฌผ์ ์กฐํํ ๋ ๋ฐ๋์ 'bno'๋ผ๋ ํ๋ผ๋ฏธํฐ๊ฐ ํ์ํ๋ฏ๋ก param()์ ํตํด์ ์ถ๊ฐํ๊ณ ์คํํจ
ํ๋ผ๋ฏธํฐ๊ฐ ์ ๋๋ก ์์ง๋์๋์ง ํ์ธํ๊ณ SQL์ ์ฒ๋ฆฌ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์์
๋ง์ง๋ง์๋ Model์ ๋ด๊ฒจ ์๋ BoardVO ์ธ์คํด์ค์ ๋ด์ฉ์ ์ดํด๋ณผ ์ ์์