💡 스프링에서 데이터를 전달해주는 대표적인 방법 두가지가 있습니다. 사용을 하면서 비슷한 부분이 많지만 다른점이 뭐가 있을까에 대해 공부하며 기록해보았습니다.
두 어노테이션 전부 데이터를 전달하기 위해 쓰입니다. uri를 통해 전달된 값을 파라미터로 받아오는 역할을 합니다.
Pathvariable는 [http://localhost:8080/board/10](http://localhost:8080/board/10)
과 같이 uri를 사용합니다.
특징으로는 전달되는 값, 즉 위의 uri에서는 10과 같은 값을 하나밖에 전달 못한다는 점 입니다.
RequestParam은 [http://localhoust:8080/board?id=1&page=2](http://localhoust:8080/board?id=1&page=2)
와 같이 uri를 사용합니다.
Pathvariable과는 다르게 인자를 하나 이상 받을 수 있습니다. 해당 어노테이션은 아래와 같이 사용할 수 있습니다.
public String getPage(@RequestParam(value='id', requires=false)Long id,
@RequestParam(value='page', requires=false)int page) {
...
}
특징으로는 아래와 같이 4개의 옵션이 있습니다.
결론적으로는 둘다 데이터를 받아오는데에 사용하고, 하나 이상의 값을 받아 올때에는 RequestParam을 사용하지만 필요에 따라 두 어노테이션을 혼합해서 사용 할 수 있습니다.