在泽西岛课程中,哪一个更适合这两者:
@PathParam("服务-ID&#34) private String serviceId;
public Response subscribe(@PathParam(" service-id")String serviceId){}
我只使用第一个因为几乎所有方法都需要service-id
。但是,我的一位同事对这种方法发表了评论,最终Jersey类基于servlet和servlet不应该有状态变量。
因为注入发生在对象创建时,所以使用它 资源类字段和bean属性的注释只是 支持默认的每请求资源类生命周期。 使用其他生命周期的资源类应该只使用它 资源方法参数的注释。
由于在webapp中,我的Jersey类 将遵循每个请求的资源类生命周期,我觉得第一种方法是安全的。请思考:)
答案 0 :(得分:3)
安全因为只在请求范围内允许这个注释(所以每个请求都有自己的bean / resource实例,并且没有共享状态)。
我可能会给每个方法提供完整的参数集,即使它有点重复。让您更容易一目了然地看到发生了什么。这是一个代码风格问题,人们可以在这里有不同的意见。
答案 1 :(得分:1)
这只是编码样式问题,因为此代码具有完全相同的结果。 我也更喜欢在方法中定义它,而不是在实例中定义它。
无论如何,一旦编译,结果是一样的! :)