springboot-2.3.2集成swagger-3.0.0

一、系统环境:

  • jdk:1.8
  • IntelliJ IDEA:2019.2.3
  • Spring Boot:2.3.2.RELEASE
  • Swagger:3.0.0

二、pom依赖

        <dependency>
            <groupId>io.springfoxgroupId>
            <artifactId>springfox-boot-starterartifactId>
            <version>3.0.0version>
        dependency>

三、新建SwaggerConfig配置类

@Configuration
@EnableOpenApi
public class SwaggerConfig {

    @Bean
    public Docket api() {
        return new Docket(DocumentationType.OAS_30)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.swaggerdemo.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("基于Swagger3.0.0的接口文档")
                .description("api信息列表")
                .version("2.0")
                .contact(new Contact("Evan", "http://www.baidu.com", "[email protected]"))
                .build();
    }
}

四、新建HelloController测试类

@RestController
@Api(tags = {"测试测试"})
public class HelloController {

    @GetMapping("/hello")
    @ApiOperation(value = "返回请求信息", notes = "根据请求参数,返回请求信息")
    @ApiImplicitParam(name = "name", value = "名字", defaultValue = "swagger")
    public String hello(@RequestParam(value = "name", defaultValue = "swagger") String name) {
        return "hello:" + name + "!";
    }
}

五、浏览器访问

地址栏中输入:ip:port/context-path/swagger-ui/index.html

这里未设置context-path,因此输入localhost:8080/swagger-ui/index.html

springboot-2.3.2集成swagger-3.0.0_第1张图片

具体展开如下:

springboot-2.3.2集成swagger-3.0.0_第2张图片

六、常用注解说明

@Api():注解类,描述Controller的作用
	tags = ”描述Controller的作用“
@ApiOperation():注解方法,描述具体接口的作用
	value=“具体说明接口的作用”
    notes="接口方法备注“
@ApiImplicitParams():注解接口方法,描述一组请求参数,可以包含多个@ApiImplicitParam()
@ApiImplicitParam():注解接口方法,描述一个具体的请求参数
	name:请求参数名
	value:请求参数描述
	required:是否必传
	dataType:参数类型
	defaultValue:默认值
@ApiResponses():注解接口方法,描述一组HTTP返回值,可以包含多个@ApiResponse()
@ApiResponse():注解接口方法,描述一个HTTP响应信息
	code:HTTP返回值
    message:返回信息
    response:抛出异常的类
@ApiModel():注解Model,描述响应数据Model类
@ApiModelProperty():注解属性,描述响应Model类的属性
@ApiIgnore():注解类,表示忽略这个Api

你可能感兴趣的:(spring)