记录一次SpringBoot整合Swagger

虽然不是第一次使用Swagger了,但是一直没有写过相关的文章,时间长了容易忘记,记录备用吧。

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。

总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法、参数和模型紧密集成到服务器端的代码,允许 API 来始终保持同步。Swagger 让部署管理和使用功能强大的 API 从未如此简单。

19062008_PluY-1

SpringBoot 版本我用的是2.4.5

1. 去Maven Repository查询依赖 配置pom.xml

需要用到的两个相关依赖分别是:springfox-swagger2 和 springfox-swagger-ui,一般选择使用人数最多的版本就好了。

412cb24ff9add53af2195e339cadd758-1

c37745491311dfc03b5f306a3ec0a9ea-1

将依赖信息填写到SpringBoot项目的pom.xml文件dependencies节点中,点击更新(Reimport),等待加载完成就可以了。

92935c1f44e56ed445d9512524adfee5-1

2. 创建Swagger的配置类

swagger2的配置文件,在项目的启动类的同级文件建立

163c0fbc700879d8332cb22db7422d8a-1

3. 配置Controller

在Controller中进行配置,常用注解:

使用注解

  1. @Api
    1. 功能:描述controller类
    2. 注解位置:类
    3. 常用注解属性
      1. tags = “” // 描述此controller类
  2. @ApiOperation
    1. 功能:描述一个方法或者一个API接口
    2. 注解位置:方法
    3. 常用注解属性
      1. value = “” // 描述方法
      2. notes = “” // 描述方法详细信息
  3. @ApiImplicitParam
    1. 功能:描述方法或接口参数
    2. 注解位置: 方法
    3. 注解属性
      1. name = “” // 方法或接口的形参, 注意要与方法的参数名称相同
      2. value = “” // 对参数的描述
      3. paramType = “” // 参数传递方式,此属性的可选值 [“header”, “query”, “path”, “body”, “form”]
        1. header,使用@RequestHeader获取的参数
        2. query,使用@RequestParam获取的参数,常用于GET请求
        3. path,使用@PathVariable获取的参数
        4. body,使用@RequestBody获取的参数,常用于POST请求,对象参数
      4. dataType = “” // 参数类型,例如 string, int, ArrayList, POJO类
  4. @ApiImplicitParams
    1. 功能:汇集多个参数
    2. 注解位置: 方法
    3. 注解属性
      1. @ApiImplicitParam组成的列表

4. 访问 http://localhost:8081/swagger-ui.html可以看到Swagger ui的界面

 

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容