1. Maven依赖

    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.6.1</version>
    </dependency>
    <dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.6.1</version>
    </dependency>
  2. SpringBoot配置

    1. 新建Swagger2.java类,请确保放在能被SpringBoot扫描到的位置
    @Configuration
    @EnableSwagger2
    public class Swagger2 { @Bean
    public Docket createRestApi() {
    return new Docket(DocumentationType.SWAGGER_2).apiInfo(this.apiInfo())
    .select()
    .apis(RequestHandlerSelectors.basePackage("controller包"))
    .paths(PathSelectors.any())
    .build();
    } private ApiInfo apiInfo() {
    return new ApiInfoBuilder().title("springboot利用swagger构建api文档")
    .description("项目描述,代码地址 https://github.com/ljinlin41")
    .termsOfServiceUrl("https://github.com/ljinlin41")
    .version("1.0")
    .build();
    } }
  3. API Web地址

    1. 此时启动SpringBoot项目,浏览http://localhost:8080/swagger-ui.html,可以发现已经有了项目的API信息。但这些信息是swagger自动配置的,如果需要定制更详细的信息,可以使用注解。
  4. 使用注解

    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组成的列表
  5. 项目代码地址

    https://github.com/ljinlin41/demo-swagger

swagger基本使用指南的更多相关文章

  1. Swagger PHP使用指南

    先说什么是Swagger, Swagger的使用目的是方便优美的呈现出接口API的各种定义, 生成API文档, 包括参数, 路径之类. 有时后端改了API的参数或者其他设置, 前端直接看这个Swagg ...

  2. Swagger UI使用指南

    1:认识Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法 ...

  3. 最新版Swagger 3升级指南和新功能体验!

    Swagger 3.0 发布已经有一段时间了,它于 2020.7 月 发布,但目前市面上使用的主流版本还是 Swagger 2.X 版本和少量的 1.X 版本,然而作为一名合格的程序员怎么能不折腾新技 ...

  4. ASP.NET Core 中文文档 第二章 指南 (09) 使用 Swagger 生成 ASP.NET Web API 在线帮助测试文档

    原文:ASP.NET Web API Help Pages using Swagger 作者:Shayne Boyer 翻译:谢炀(kiler) 翻译:许登洋(Seay) 对于开发人员来说,构建一个消 ...

  5. Swagger使用指南

    1:认识Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法 ...

  6. Laravel(PHP)使用Swagger生成API文档不完全指南 - 基本概念和环境搭建 - 简书

    在PHPer中,很多人听说过Swagger,部分人知道Swagger是用来做API文档的,然而只有少数人真正知道怎么正确使用Swagger,因为PHP界和Swagger相关的资料实在是太少了.所以鄙人 ...

  7. swagger在线api文档搭建指南,用于线上合适么?

    在上一篇文章中,我们讲解了什么是 api,什么是 sdk: https://www.cnblogs.com/tanshaoshenghao/p/16217608.html 今天将来到我们万丈高楼平地起 ...

  8. DotNet 资源大全中文版,内容包括:编译器、压缩、应用框架、应用模板、加密、数据库、反编译、IDE、日志、风格指南等

    DotNet 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-dotnet 是由 quozd 发起和维护.内容包括:编译器. ...

  9. ASP.NET Zero--开发指南

    ASP.NET Zero--开发指南(Lyhcee 译) 01. 前期介绍 02. 前期要求 03. 解决方案结构(层) 04. 前端应用程序 05. 后端应用程序 06.WEB.HOST应用程序 0 ...

随机推荐

  1. 怎么安装GUI

    python安装easygui的过程中,下载的是0.97.安装的时候提示setuptools模块不存在.然后又去安装setuptools等等, 真麻烦.也没有成功.后来又下载了0.96的.才成功.下面 ...

  2. JAVA8学习——深入浅出函数式接口FunctionInterface(学习过程)

    函数式接口 函数式接口详解:FunctionInterface接口 话不多说,先打开源码,查阅一番.寻得FunctionInterface接口 package java.util.function; ...

  3. Omnigraffle 许可证

    名字:Appked 序列号:MFWG-GHEB-HYTW-CGHT-CSXU-QCNC-SXU

  4. 初始Redis与简单使用

    初始Redis: redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

  5. 从零开始のcocos2dx生活(十)ScrollView

    目录 简介 基础变量 ScrollViewDelegate Direction _dragging _container _touchMoved _bounceable _touchLength 方法 ...

  6. 「Luogu P3866」[TJOI2009]战争游戏 解题报告

    题面 好难表述啊~ 在n*m的矩阵上,有一些大兵(为0),一些空地(一个正整数),障碍物(-1),现在摧毁一些空地,使所有大兵不能走出矩阵去(代价为表示空地的整数),求最小代价 思路: 网络流最小割 ...

  7. linux下安装OpenCV-2.4

    OpenCV(Open Source Computer Vision Library),是一个跨平台计算机视觉库,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV由一系列 C 函数和少量 ...

  8. Spring多数据源动态切换

    title: Spring多数据源动态切换 date: 2019-11-27 categories: Java Spring tags: 数据源 typora-root-url: ...... --- ...

  9. JavaScript面向对象 实例与原型

    JavaScript 面向对象 和 C# 不太一样,js 的对象是继承自原型的如下: 首先创建一个 js 实例 new  function function f () {} 这个函数 会继承 Func ...

  10. 消息队列rabbitmq的五种工作模式(go语言版本)

    前言:如果你对rabbitmq基本概念都不懂,可以移步此篇博文查阅消息队列RabbitMQ 一.单发单收 二.工作队列Work Queue 三.发布/订阅 Publish/Subscribe 四.路由 ...