- URL의 리소스 경로에 직접 식별자를 담은 요청을 처리할 수 있음

=> @PathVariable로 처리

ex : http://adcdef.com/mapping/users/userA/orders/123

 

package hello.springmvc.basic.requestmapping;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/mapping/users")
public class MappingClassController {

    @GetMapping("/{userId}")
    public String findUser(@PathVariable("userId") String userId) {
        log.info("addUser userId={}", userId);
        return "ok";
    }

    @PostMapping("/{userId}")
    public String addUser(@PathVariable String userId) {
        log.info("addUser userId={}", userId);
        return "ok";
    }    
    
    @GetMapping("/mapping/{userId}/orders/{orderId}")
    public String mappingPath(@PathVariable("userID") String userId, @PathVariable("orderId") Long orderId) {
        log.info("mappingPath userId={}, orderId={}", userId, orderId);
        return "ok";
    }

}