본문 바로가기

Spring boot/Blog 프로젝트 만들기(JPA)

GET 방식과 URL 주소 설계

💡 멱등성(Idempotency)이란 같은 작업을 여러 번 수행해도 결과가 달라지지 않는 성질을 의미한다. 이 개념은 특히 HTTP 메서드나 데이터베이스 연산에서 자주 사용된다.


멱등성을 가짐 (GET, PUT, DELET ) 비 멱등성을 가짐 (POST)

멱등성의 의미?
안정성: 멱등성을 가진 연산은 중복 요청에 대해 안전하다. 네트워크 문제로 인해 동일한 요청이 여러 번 전달되더라도, 최종 결과는 변하지 않으므로 안전하게 처리할 수 있다.데이터 일관성: 멱등성은 시스템이 일관된 상태를 유지하도록 도와준다. 특히, 분산 시스템에서 동일한 작업이 여러 번 실행될 가능성이 있을 때, 멱등성은 데이터 무결성을 보장한다.

 

멱등성이란 같은 작업을 여러 번 수행해도 결과가 달라지지 않는 성질을 의미하며, 주로 HTTP 메서드나 데이터베이스 연산에서 사용됩니다. 멱등성을 가진 연산은 안정적이고 예측 가능하며, 시스템의 일관성을 유지하는 데 중요한 역할을 합니다.

 

 

💡 쿼리 스트링(Query String)과 경로 매개변수(Path parameter)는 모두 HTTP 요청에서 파라미터를 전달하는 방식입니다. 그러나 다음과 같은 차이점이 있습니다.

쿼리 스트링(Query String)

URL 뒤에 '?'를 붙이고 파라미터를 key-value 쌍으로 전달합니다. 파라미터는 '&'로 구분되며, '='로 key와 value를 구분합니다. 브라우저의 캐시와 검색 엔진에서 높은 가중치를 부여합니다. 파라미터를 전달할 때 key와 value를 쌍으로 전달하기 때문에, 순서를 변경해도 문제가 없습니다.
예시 : http://example.com/search?q=keyword&page=1

경로 매개변수(Path parameter)

URL 경로의 일부로 파라미터를 전달합니다. 경로 변수(Path variable)를 사용하여 파라미터를 전달하며, **{}**로 변수를 감싸서 표시합니다. 일반적으로 RESTful API에서 사용되며, URL 자체가 파라미터 정보를 전달합니다. 파라미터를 전달할 때 key와 value를 쌍으로 전달하지 않습니다.
예시 : http://example.com/users/{id}

 

728x90