使用单泽西REST类用于多个PATH

Yog*_*dra 2 rest jax-rs jersey jersey-1.0

我已经开始使用JAX-RS开发REST服务.使用Jersey非常简单,但是我使用Spring MVC和Jersey REST类遇到的一个区别是,Spring支持必须忽略Root Path元素并在Method Level上有单独的路径映射.因此,如果有上传/下载功能,我可能不希望有一个上传一个类和一个下载,泽西岛要求我现在做,因为在类级别上只有1个根路径,如下所示:

@Path("/uploads")
public class FileDownloadController {
......
}
Run Code Online (Sandbox Code Playgroud)

如果我忽略根级别@Path即在类级别,则启动服务器时Jersey不会识别我的类.这是我想要实现的目标:

public class FileProcessController {

   @Path("/uploads")
   public Response uploadFile(...) {
       ......
   }

   @Path("/downloads")
   public Response downloadFile(...) {
      ......
   }
}
Run Code Online (Sandbox Code Playgroud)

任何线索将不胜感激.

谢谢

Dan*_*lay 10

不确定我是否正确理解了这个问题,但是以下内容将在'Jersey root'中创建两个端点as /uploads/downloads.您将能够在根目录中指定其他方法; 所有这些都在同一个班级.

@Path("/")  
public class FileProcessController {

   @Path("uploads")
   public Response uploadFile(...) {
       ...
   }

   @Path("downloads")
   public Response downloadFile(...) {
      ...
   }

}
Run Code Online (Sandbox Code Playgroud)