spring boot集成swagger2

pom配置

pom 配置
   <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

@Configuration
public class Swagger2Config {
    @Bean
    public Docket swaggerConfig() {
        return new Docket(DocumentationType.SWAGGER_2).pathMapping("/")
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.vtest.it.micservicemesservice.controller"))
                .paths(PathSelectors.any())
                .build()
                .apiInfo(new ApiInfoBuilder()
                        .title("service") //swagger ui 主标题
                        .description("Service api details") // 描述
                        .version("2.9.2") // 版本
                        .license("Apache License, Version 2.0") //license,可选取其他license
                        .licenseUrl("https://www.apache.org/licenses/LICENSE-2.0.html")
                        .contact(new Contact("名称", "网站", "邮箱地址"))
                        .build());
    }
}

注解释义

主要的几个注解及其使用如下,更多的注解及其使用方法请参考官网

@Api(tags = "database service") 注解controller,标识该类的主要用途

@ApiOperation("the purpose of this method") 注解方法,标识该方法的主要用途

@ApiImplicitParams(
            {
                    @ApiImplicitParam(name = "入参名称1", value = "参数1描述", defaultValue = "默认值", required = true|false),
                    @ApiImplicitParam(name = "入参名称2", value = "参数1描述", defaultValue = "默认值", required = true|false)
                    ...... //如有多个参数可以复制已上配置
            }
    )  标识方法中入参,入参释义,默认值,是否必须
    
@ApiModel 标识bean

@ApiModelProperty(value = "user name") 标识字段

注解示例

@Api

@Api(tags = "service")
@RestController
public class DemoController {
	......
}

@ApiOperation 和 @ApiImplicitParams 和 @ApiImplicitParam

	@ApiOperation("the purpose of this method")
    @ApiImplicitParams(
            {
                    @ApiImplicitParam(name = "val1", value = "val1", defaultValue = "null", required = true),
                    @ApiImplicitParam(name = "val2", value = "val2", defaultValue = "null", required = true)
            }
    )
    @GetMapping("/WaferIdAndBySlot/{val1}/{val2}")
    String getValue(@PathVariable("val1") String val, @PathVariable("val2") String val1) {
        ......
    }

@ApiModel 和 @ApiModelProperty

@ApiModel
public class DemoBean {
    @ApiModelProperty(value = "val1")
    private String val1;
    @ApiModelProperty(value = "val2")
    private String val2;
    @ApiModelProperty(value = "val3")
    private String val3;
}

swagger ui界面

开启spring boot应用之后,可以在本地查看调试 url:http://localhost:${port}/swagger-ui.htmlport 为自定义端口
UI界面,亲子测试了解更多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值