swagger和postman都是后端编写的测试接口使用方式,由于实际开发的需求和使用习惯的不同,还是有些差异![在这里插入图片描述](https://img-blog.csdnimg.cn/2b8cf353b1f3454b983355793c53c1e9.png
Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,Swagger 就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。 PS:Swagger 遵循了 OpenAPI 规范,OpenAPI 是 Linux 基金会的一个项目,试图通过定义一种用来描述 API 格式或 API 定义的语言,来规范 RESTful 服务开发过程。 Swagger 官网地址:https://swagger.io/Swagger 有什么用?从上述 Swagger 定义我们不难看出 Swagger 有以下 3 个重要的作用:将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档;当接口更新之后,只需要修改代码中的 Swagger 描述就可以实时生成新的接口文档了,从而规避了接口文档老旧不能使用的问题;通过 Swagger 页面,我们可以直接进行接口调用,降低了项目开发阶段的调试成本。
导入两个依赖即可
<!--springfox swagger官方Starter-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.1</version>
</dependency>
代码如下(示例):
@AutoLog(value = "公司入驻申请-分页列表查询")
@ApiOperation(value = "公司入驻申请-分页列表查询", notes = "公司入驻申请-分页列表查询")
@GetMapping(value = "/list")
public Result<?> queryPageList(AdmissionApplication admissionApplication,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<AdmissionApplication> queryWrapper = QueryGenerator.initQueryWrapper(admissionApplication, req.getParameterMap());
Page<AdmissionApplication> page = new Page<AdmissionApplication>(pageNo, pageSize);
IPage<AdmissionApplication> pageList = admissionApplicationService.page(page, queryWrapper);
return Result.OK(pageList);
}
swagger注解 | 说明 |
---|---|
@Api | 对请求类的说明 |
@ApiOperation | 方法的说明 |
@ApiImplicitParams | 方法参数的说明 |
@ApiImplicitParam | 用于指定单个参数的说明 |
@ApiResponses | 用于方法返回值的说明 |
@ApiResponse | 用于指定单个返回值的说明 |
@ApiModel | 用于javabean类上,说名javabean整体的用途 |
@ApiModelProperty | 用于javabean类的属性上,说名此属性的含义 |
以上就是今天要讲的内容,本文仅仅简单介绍了swagger注解的使用。