springboot与swagger2的集成

本文介绍了如何将Swagger2与SpringBoot结合,用于后台接口的自动化测试。Swagger提供了一个动态更新的平台,避免手动维护测试接口的繁琐工作。文章详细讲述了集成的三个步骤:引入jar包、配置启动类和在Controller层使用Swagger进行接口测试。
摘要由CSDN通过智能技术生成

现在测试都提倡自动化测试,那我们作为后台的开发人员,也得进步下啊,以前用postman来测试后台接口,那个麻烦啊,一个字母输错就导致测试失败,现在swagger的出现可谓是拯救了这些开发人员,便捷之处真的不是一点两点。

1、swagger是什么?

简单说下,它的出现就是为了方便进行测试后台的restful形式的接口,实现动态的更新,当我们在后台的接口修改了后,swagger可以实现自动的更新,而不需要认为的维护这个接口进行测试。

2、springboot与swagger的集成:

第一步:jar包的引入:

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

第二步:swagger的配置启动类编写:

要使用swagger要进行一些配置,这个在界面的图上是可以显示的:类似于说明书:在这个类中我们会使用注解来进行启动swagger:

package com.springboot.swagger.springbooswagger.swaggerConfig;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class Swagger2Config {

    @Bean
    Docket createSwaggerApi(){
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.any())
                //.apis(RequestHandlerSelectors.basePackage("com.springboot.swagger.springbooswagger.controller"))
                .paths(PathSelectors.any())
                .build();
        return docket;
    }

    private ApiInfo apiInfo(){
        return new ApiInfoBuilder()
                //页面标题
                .title("pring Boot 测试使用 Swagger2 构建RESTful API")
                //创建人
                .contact(new Contact("bobey","http://www.baidu.com", ""))
                //版本号
                .version("1.0")
                //描述
                .description("API 描述")
              .build();


    }
}

备注:在

 Docket docket = new Docket(DocumentationType.SWAGGER_2)
                    .apiInfo(apiInfo())
                    .select()
                    .apis(RequestHandlerSelectors.any())
                    //.apis(RequestHandlerSelectors.basePackage("com.springboot.swagger.springbooswagger.controller"))
                    .paths(PathSelectors.any())
                    .build();

指定apis(RequestHandlerSelectors.basePackage(“com.springboot.swagger.springbooswagger.controller”) 包时只要到restful 那层包路径即可

第三步:使用swagger来进行模拟测试:

使用swagger2来进行测试接口主要是在哪些类中使用:这里我们依然选择在controller层:

package com.springboot.swagger.springbooswagger.controller;
import com.springboot.swagger.springbooswagger.pojo.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@Api("swaggerDemoController相关的api")
public class HelloController {
    @ApiOperation(value = "添加用户",notes = "HelloWorld",httpMethod = "GET")
    @ApiParam(required = true,name = "paramData",value = "用户信息 json 数据")
    @RequestMapping(value = "/hello")
    public User hello(String paramData){
        User userBean = new User();
        userBean.setName("测试用户");            userBean.setOtherName(paramData);
        return userBean;
    }
}

备注: 如果没有指定请求方式为什么请求方式会显示如下
在这里插入图片描述
访问路径:http://localhost:7020/swagger/swagger-ui.html
显示结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值