当前位置 : 主页 > 编程语言 > java >

Jax-rs规范下REST接口使用方法详解

来源:互联网 收集:自由互联 发布时间:2021-04-10
REST接口目前有2种方式: 一种是遵循了jax-rs规范的,使用的是@Path,@PathParam等注解.一种是Spring自有的一套,使用的是@RestController,@GetMapping等注解. 如何开发jax-rs规范的REST接口呢 在SpringBoot项目

REST接口目前有2种方式: 一种是遵循了jax-rs规范的,使用的是@Path,@PathParam等注解.一种是Spring自有的一套,使用的是@RestController,@GetMapping等注解.

如何开发jax-rs规范的REST接口呢?

在SpringBoot项目中,可以按如下步骤进行:

1. 引入依赖: spring-boot-starter-jersey

2. 添加配置:

public class JerseyConfig extends ResourceConfig{
  public JerseyCongfig(){
    super.register(jax-rs规范的REST接口所在实现类.class);
  }
}

3. 具体使用:

  有2种方式,一种是简单的直接使用实现类作为接口所在类,一种是接口与实现类搭档的方式.

  3.1 直接以实现类作为接口所在类的方式与Spring的Controller类似,只不过改为使用jax-rs规范的@Path,@PathParam注解

  @Path("/user")
  @Produces("application/json")
  public class MyController{
    @Path("/getName/{name}")
    @GET
    public String getName(@PathParam("name")String name){
      return name;
    }
  }

  3.2 以接口与实现类搭档的方式

  接口:

  @Path("/user")
  @Produces("application/json")
  public interface IMyControllerService {
    @Path("/getName/{name}")
    @GET
    String getName(@PathParam("name")String name);
  }

  实现类:

  public class MyController implements IMyControllerService{
    public String getName(String name){
      return name;
    }
  }

4.注意点

  无论哪种使用方式,都要将实现类注册到ResourceConfig中,否则找不到.

  用一个对象不能接收多个path参数, 如果需要用,需要其他配置

  可以使用多个@PathParam接收多个path参数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

网友评论