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

    前言

    最近在做一些demo,测试接口的时候总是有些麻烦,于是就引入了Swagger。

    添加相关的maven依赖

    需要添加 springfox-swagger2 和 springfox-swagger-ui,可以自己去maven中央仓库去搜一下,我这里提供一下用的最多的版本:

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

    将swagger交给spring管理

    @Configuration
    @EnableSwagger2
    public class SwaggerConfig {
    
        @Bean
        public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .apiInfo(apiInfo())
                    .select()
                    .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
                    .paths(PathSelectors.any())
                    .build();
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()
                    .title("Springboot利用swagger构建api文档")
                    .description("简单优雅的restful风格")
                    .version("1.0")
                    .build();
        }
    }
    

    编写controller

    @RestController
    @RequestMapping("/common")
    @Api(tags = "测试swagger")
    public class CommonController {
    
        @ApiOperation("测试swagger接口")
        @RequestMapping("/test")
        public ResponseData<String> test(@RequestParam String str) {
            return new ResponseData<>("111", "success", str);
        }
    }
    
    public class ResponseData<T> {
        private String code;
        private String msg;
        private T data;
    
        public ResponseData() {
        }
    
        public ResponseData(String code, String msg, T data) {
            this.code = code;
            this.msg = msg;
            this.data = data;
        }
    }
    

    访问

    在浏览器中访问"http://localhost:8080/swagger-ui.html",注意端口和你项目启动的端口保持一致即可。

  • 相关阅读:
    用R语言完成的交通可视化报告
    二维码(带有图片)的生成
    大文件数据去重复
    shell 脚本大文件处理
    Domain-specific language 领域特定语言
    cacheed 限制 4节点 3000万 es 批量删除 shell脚本练习 elasticsearch_action
    cached
    广告中嵌入非广告 非广告中嵌入广告
    js 四种调用方式 Method Invocation Pattern
    js 变量作用域
  • 原文地址:https://www.cnblogs.com/lwmp/p/13659360.html
Copyright © 2011-2022 走看看