swagger3


原文链接:

swagger3 配置

@Configuration
@EnableOpenApi
public class SwaggerConfig {

    // 配置多个分组
    @Bean
    public Docket docket1(Environment environment){
        return new Docket(DocumentationType.OAS_30)
                .groupName("common")
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.hbu.myblog.controller.common"))
                .build();
    }

    @Bean
    public Docket docket2(Environment environment){
        return new Docket(DocumentationType.OAS_30)
                .groupName("blog")
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.hbu.myblog.controller.blog"))
                .build();
    }


    @Bean
    public Docket docket3(Environment environment){

        //设置要显示的环境
        Profiles profiles = Profiles.of("dev");
        //通过environment.acceptsProfiles 判断是否处在自己设定的环境当中。
        boolean flag = environment.acceptsProfiles(profiles);

        return new Docket(DocumentationType.OAS_30)
                .groupName("admin")
                .apiInfo(apiInfo())//配置swagger信息
                //默认就为true  是否启用swagger
                .enable(flag)
                //RequestHandlerSelectors,配置要扫描接口的方式
                //basepackage: 指定要扫描的包
                //any()
                //none()
                //withClassAnnotation: 扫描类上的注解
                //withMethodAnnotation: 扫描方法上的注解
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.hbu.myblog.controller.admin"))
                //要过滤的路径
                //.paths(PathSelectors.ant("/com/**"))
                .build();
    }

    /**
     * 配置swagger信息
     */
    private ApiInfo apiInfo(){
        return new ApiInfo("MyBlog Api Documentation",
                "Api Documentation",
                "1.0",
                "urn:tos",
                new Contact("ZHX", "https://gitee.com/jikezhang", "3136713504@qq.com"),
                "Apache 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0",
                new ArrayList());

    }
}

主要注解

@ApiModel

@ApiModelProperty

@Api(tags = “Test类”):用于类上,为该类进行注释,注意参数必须是“tags”才会有效(默认也不行,因为默认是第一个字段value)

@ApiOperation(“你好 世界”):用于方法上,为该接口进行注释

@ApiImplicitParams():用于方法上,里面还应使用数组的@ApiImplicitParam注解,其作用是为接口字段进行注释,应注意的是,如果接口需要的字段是pojo类型,则该接口就不能使用@ApiImplicitParams注解,如果想为相应字段写注释,则应该在相应的pojo类中使用@ApiModel与@ApiModelProperty

@ApiImplicitParams:用在请求的方法上,表示一组参数说明
    @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
        name:参数名
        value:参数的汉字说明、解释
        required:参数是否必须传
        paramType:参数放在哪个地方
            · header --> 请求参数的获取:@RequestHeader
            · query --> 请求参数的获取:@RequestParam
            · path(用于restful接口)--> 请求参数的获取:@PathVariable
            · body(不常用)
            · form(不常用)    
        dataType:参数类型,默认String,其它值dataType="Integer"       
        defaultValue:参数的默认值

在这里插入图片描述

注意

在正式发布的时候,挂壁Swagger!!! 处于安全考虑,而且节省运行内存。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值