【发布时间】:2013-05-29 19:34:20
【问题描述】:
我有变体资源都扩展BaseResource<T>
@Component
@Path("/businesses")
public class BusinessResource extends BaseResource<Business>{
@GET
@Path({businessId}/)
public Business getBusiness(@PathParam("businessId") Integer businessId){..}
}
@Component
@Path("/clients")
public class ClientResource extends BaseResource<Client>{
@GET
@Path({clientId}/)
public Client getClient(@PathParam("clientId") Integer clientId){..}
}
我想,当有人打电话给
/businesses/3,它将首先通过我将编写的一个方法来验证 T 对象,如果一切正常,我会告诉 jersey 继续处理资源。
客户端也是如此。
我不能使用常规 servlet/过滤器 - 因为它是在 jersey servlet 之前调用的,我不知道调用的是哪个资源。
在泽西岛最好的方式是什么?
在知道球衣将调用的方法和调用之间是否有干预的地方?
【问题讨论】:
-
面向方面的编程。方面J。
-
你能举例说明如何在球衣中使用它吗?
-
这将要求其他程序员在每个方法上方使用安全注解。我希望它高于类名,但如果它高于类 - 我将如何让 @PathParam businessId 或 userId 进行验证?
-
这只是一个例子。您不必将其与注释一起使用。阅读方面。您可以访问方法参数。