私はすでにここで質問されている質問をしていません: @PathParamと@QueryParamの違いは何ですか
これは「ベストプラクティス」または規則の質問です。
するときは、使用する@PathParam
対@QueryParam
。
その決定は、情報パターンを区別するために2つを使用することであると考えることができます。私の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) ;
対 /category/instance
@GET
@Path("/employee/{dept}/{id}")
Patient getEmployee(@PathParam("dept")Long dept, @PathParam("id")Long id) ;
対 ?category+instance
@GET
@Path("/employee")
Patient getEmployee(@QueryParam("dept")Long dept, @QueryParam("id")Long id) ;
それを行うための標準的な慣習はないと思います。ある?しかし、私が上で例示したように、人々がどのようにPathParamとQueryParamを使用して彼らの情報を区別するかについて聞きたいです。練習の理由も聞きたいです。