◇ PART · REST

HTTP 메서드 어노테이션

REST API와 마무리 — 읽기 자료

📍 지금 어디를 만지고 있나요?
브라우저
REST API와 마무리
DB

핵심 용어

RESTful리소스를 URL 로, 동작을 HTTP 메서드로 표현하는 설계.
@PathVariableURL 경로의 일부를 변수로.

1. 문제

전 차시까지의 답답함

같은 URL 에 GET/POST/PUT/DELETE 가 다 있는데 어떻게 분기?

2. 새 도구

메서드별 매핑

각 HTTP 메서드를 별도 어노테이션으로. RESTful URL 디자인의 첫걸음.

3. 코드

@RestController
@RequestMapping("/api/boards")
public class BoardApiController {       // com.smhrd.controller

    @GetMapping              // GET /api/boards
    public List<Board> list() {
        return service.selectList();
    }

    @GetMapping("/{num}")    // GET /api/boards/3
    public Board view(@PathVariable int num) {
        return service.selectOne(num);
    }

    @PostMapping             // POST /api/boards
    public Board create(@RequestBody Board b) {
        service.insert(b);
        return b;
    }

    @PutMapping("/{num}")    // PUT /api/boards/3
    public Board update(@PathVariable int num, @RequestBody Board b) {
        b.setNum(num);
        return service.update(b);
    }

    @DeleteMapping("/{num}") // DELETE /api/boards/3
    public void delete(@PathVariable int num) {
        service.delete(num);
    }
}

4. 정리

5. Before / After

전 차시 끝

같은 URL 에 GET/POST/PUT/DELETE 가 다 있는데 어떻게 분기?

이번 차시 끝

RESTful URL 디자인의 큰 그림을 안다.