我不是问这里已经问过的问题:
What is the difference between @PathParam and @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实例
@GET
@Path("/employee")
Patient getEmployee(@QueryParam("dept")Long dept, @QueryParam("id")Long id) ;
我不认为有一个标准的做法。在那儿?但是,我想听听人们如何使用PathParam和QueryParam来区分他们的信息,如上面例举的。我也很愿意听到这种做法背后的原因。