专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

Swagger Springboot Idea 基础配置(一)

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/14 1:02:38       共计:3634 浏览
什么是Swagger???

  自己百度官方定义,我目前使用到的,通过类似于注释的配置注解,自动生成一个整齐的页面展示,方便对接前端,同时可以页面测试的巨方便的一个好东西.
使用方法
  1、配置pom文件

            <!-- swagger -->
            <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>

  2、springBoot整合swagger

  配置Swagger参数

    /**
     * Swagger配置
     */
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig {
     
        @Bean
        public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2)//
                    .groupName("研发测试")//
                    .apiInfo(apiInfo())//
                    .select()//
                    .apis(RequestHandlerSelectors.basePackage("com.study.blog"))//添加ApiOperiation注解的被扫描
                    .paths(PathSelectors.any())//
                    .build();
        }
     
    /*
        @Bean
        public Docket createRestApi() {
            Docket docket = new Docket(DocumentationType.SWAGGER_2)//
                    .groupName("研发测试")//
                    .apiInfo(apiInfo());
            //页面展示的基本信息
            Docket build = docket.select()
                    .apis(RequestHandlerSelectors.basePackage("com.study.blog.swagger"))//添加ApiOperiation注解的被扫描
                    .paths(PathSelectors.any()).build();
            System.out.println(build == docket);//true
            return build;
        }
    */
     
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()//
                    .title("Swagger Interface")//
                    .description("数据交换格式: JSON")//
                    .license("我自己的测试 2020 ? All rights Reserved")//
                    .version("v2.9.0")//
                    .build();
        }
    }

  其中的参数

  --groupName   因为有可能有多个Docket 配置,所以用一个名字区分

  --apiInfo  页面展示的基本信息

接下来的参数如注释写的一样,给配置一个选择器,筛选展示的数据

  --select 是一个选择器,初始化docket的选择

  --apis  这个用来配置swagger扫描的包

  --paths  这个配置符合包里边的路径,可以通过正则匹配,目前是全匹配
3、给方法添加注解

    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.PostMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
     
    import io.swagger.annotations.Api;
    import io.swagger.annotations.ApiOperation;
     
    /**
     * @author haotonghui <haotonghui@kuaishou.com>
     * Created on 2020-12-15
     */
    @RestController
    @RequestMapping("/swagger/test")
    @Api(tags = "SwaggerTest", description = "swagger展示的接口调用")
    public class SwaggerTestController {
     
     
        @GetMapping("getTest")
        @ApiOperation(value = "获取信息")
        public String getTest() {
            return "信息";
        }
     
        @PostMapping("postTest")
        @ApiOperation(value = "新增信息")
        public String postTest() {
            return "新增信息";
        }
     
     
    }

4、访问本地链接

  http://localhost:8080/swagger-ui.html  在swagger的2版本的生成网页的规则是, IP:端口/项目虚拟目录/swagger-ui.html
5、效果

配置文件中所提到的信息,都有展示

 

类中的详细注解api详解请看下一章:Swagger Springboot Idea 基础配置(二)

 
版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:Swagger Springboot Idea Swagger的API详解(二) | ·下一条:SpringBoot集成Swagger2报错

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有