1. 程式人生 > 程式設計 >Jax-rs規範下REST介面使用方法詳解

Jax-rs規範下REST介面使用方法詳解

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引數

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。