繁体   English   中英

球衣:可以从父类继承路径

[英]jersey: possible to inherit path from parent class

本着DRY的精神,我尝试将注释和共享代码捆绑到一个中心类中,这些注释和共享代码适用于我的所有REST资源。 共享部分路径似乎无效。

假设我在/v1/users/v1/items有两个REST资源。 Jersey资源都扩展了相同的父类V1BaseResource 他们可以继承路径的v1部分吗?

例:

@Path("v1")
@Produces(MediaType.APPLICATION_JSON)   // applies to all child-classes
public class V1BaseResource {

    // maybe even some shared code
}

UsersResource

@Path("users")
public class UsersResource extends V1BaseResource {

    @GET
    public Response getUsers() ...
}

ItemsResource

@Path("items")
public class ItemsResource extends V1BaseResource {

    @GET
    public Response getItems() ...
}

不幸的是,实际资源的@Path注释会覆盖路径 ,而不是添加 路径

这是可能的(不使用子资源定位器 )?

如果您看一下JSR,那是不可能的:

如果子类或实现方法具有任何JAX-RS批注,那么将忽略超类或接口方法上的所有批注。

这是JSR: JSR-339 参见第3.6节

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM