REST API와 마무리 — 읽기 자료
기존 v6 게시판을 통째로 옮겨서 REST 버전을 만들자.
BoardController 를 BoardApiController 로 복사 → return view 를 return 객체로 → @Controller 를 @RestController 로.
// v6 (BEFORE) — com.smhrd.controller
@Controller @RequestMapping("/board")
public class BoardController {
@GetMapping("/list")
public String list(Model m) {
m.addAttribute("boards", service.selectList());
return "board/list";
}
}
// v8 (AFTER) — com.smhrd.controller
@RestController @RequestMapping("/api/boards")
public class BoardApiController {
@GetMapping
public List<Board> list() {
return service.selectList(); // 자동 JSON 변환
}
@GetMapping("/{num}")
public Board view(@PathVariable int num) {
return service.selectOne(num);
}
}
기존 v6 게시판을 통째로 옮겨서 REST 버전을 만들자.
같은 게시판이 두 가지 인터페이스를 가진다 — JSP 형 + JSON API 형. v8.