: 난 이미 여기에 요청합니다 질문 요구 하진 않았어 @PathParam과 @QueryParam의 차이점은 무엇입니까
이것은 "모범 사례"또는 컨벤션 질문입니다.
당신은 언제 사용하는 것이 @PathParam
대 @QueryParam
.
결정이 정보 패턴을 차별화하기 위해 두 가지를 사용하고 있다고 생각할 수 있습니다. LTPO 아래에서 완벽하게 관찰하는 것보다 덜 설명하겠습니다.
PathParam 사용은 정보 카테고리를 위해 예약 될 수 있는데, 이는 정보 트리의 분기에 잘 들어 맞습니다. PathParam을 사용하여 엔티티 클래스 계층으로 드릴 다운 할 수 있습니다.
반면, QueryParam은 클래스의 인스턴스를 찾기 위해 속성을 지정하기 위해 예약 될 수 있습니다.
예를 들어
/Vehicle/Car?registration=123
/House/Colonial?region=newengland
/category?instance
@GET
@Path("/employee/{dept}")
Patient getEmployee(@PathParam("dept")Long dept, @QueryParam("id")Long id) ;
vs /category/instance
@GET
@Path("/employee/{dept}/{id}")
Patient getEmployee(@PathParam("dept")Long dept, @PathParam("id")Long id) ;
vs ?category+instance
@GET
@Path("/employee")
Patient getEmployee(@QueryParam("dept")Long dept, @QueryParam("id")Long id) ;
나는 그것을하는 표준 규칙이 없다고 생각합니다. 있습니까? 그러나 사람들이 PathParam과 QueryParam을 사용하여 위에서 설명한 것처럼 정보를 차별화하는 방법에 대해 듣고 싶습니다. 또한 연습의 이유를 듣고 싶습니다.