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参数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。
- 本文固定链接: https://zxbcw.cn/post/195295/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)