zoukankan      html  css  js  c++  java
  • springboot整合swagger2

    一、在Maven中添加依赖

    <dependency>
    
        <groupId>io.springfox</groupId>
    
        <artifactId>springfox-swagger2</artifactId>
    
        <version>2.2.2</version>
    
    </dependency>
    
    <dependency>
    
        <groupId>io.springfox</groupId>
    
        <artifactId>springfox-swagger-ui</artifactId>
    
        <version>2.2.2</version>
    
    </dependency>

    二、创建Swagger2的配置类

    @Configuration
    public class Swagger2Config {
    @Bean
    public Docket createRestApi() {
    return new Docket(DocumentationType.SWAGGER_2)
    .apiInfo(apiInfo())
    .select()
    .apis(RequestHandlerSelectors.basePackage("com.elan.ffoodcrm"))
    .paths(PathSelectors.any())
    .build();
    }

    private ApiInfo apiInfo() {
    return new ApiInfoBuilder()
    .title("接口文档") //标题
    .description("提供") //描述
    .termsOfServiceUrl("") //这里配置的是服务网站,我写的是我的博客园站点~欢迎关注~
    .contact(new Contact("", "", "")) // 三个参数依次是姓名,个人网站,邮箱
    .version("1.0") //版本
    .build();
    }
    }

    三、Swagger2注解的使用

    @Api:用在类上,说明该类的作用。

    @ApiOperation:注解来给API增加方法说明。

    @ApiImplicitParams : 用在方法上包含一组参数说明。

    @ApiImplicitParam:用来注解来给方法入参增加说明。

    @ApiResponses:用于表示一组响应

    @ApiResponse:用在@ApiResponses中,一般用于表达一个错误的响应信息

        *  code:数字,例如400

        *  message:信息,例如"请求参数没填好"

        *  response:抛出异常的类   

    @ApiModel:描述一个Model的信息(一般用在请求参数无法使用@ApiImplicitParam注解进行描述的时候)

        *  @ApiModelProperty:描述一个model的属性

    @ApiImplicitParam的参数说明:

    paramType:指定参数放在哪个地方

    header:请求参数放置于Request Header,使用@RequestHeader获取

    query:请求参数放置于请求地址,使用@RequestParam获取

    path:(用于restful接口)-->请求参数的获取:@PathVariable

    body:(不常用)

    form(不常用)

    name:参数名  
    dataType:参数类型  
    required:参数是否必须传 true | false
    value:说明参数的意思  
    defaultValue:参数的默认值  
    @Api("用户接口")
    @RestController
    public class UserController {
    @ApiOperation(value = "设置名称")
    @GetMapping("user")
    public user user(String name){
    user user = new user();
    user.setName(name);
    return user;
    }
    }

    添加注解后启动springboot,输入http://localhost:8080/swagger-ui.html即可进入文档页面

  • 相关阅读:
    Paddle和PaddleNLP的简介与使用
    Hangfire 使用笔记 任务可以分离到别的项目中,无需重复部署Hangfire,通过API方式通信。
    DeprecationWarning: find_element_by_* commands are deprecated. Please use find_element() instead driver.find_element_by_class_name('content-wrapper-inner').click()
    图片反防盗链
    onsubmit=return false阻止form表单提交
    360极速浏览器安装vue-devtools插件
    Node.js安装详细步骤教程(Windows版)
    C/C++ for Visual Studio Code
    mysql 利用ibd文件恢复数据库
    解决 本地计算机上的MySQL80服务启动后停止的问题!!!
  • 原文地址:https://www.cnblogs.com/znht/p/11528301.html
Copyright © 2011-2022 走看看