引入依赖

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>

配置

@Configuration
@EnableOpenApi
public class SwaggerConfig {
    
    /** 获取当前环境 */
    @Value("${spring.profiles.active}")
    private String env;

    /** Swagger的Docket的Bean实例 */
    @Bean
    public Docket docket() {
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
                .enable(Objects.equals(env, "dev"))//仅在开发环境开启swagger
                .select()
                //配置要扫描的包
                .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                //配置要扫描的路径
                .paths(PathSelectors.ant("/site/**"))
                .build()
                .groupName("A");//设置组名
    }

    @Bean
    public Docket docket1(){
        return new Docket(DocumentationType.SWAGGER_2).groupName("B");//开启第二个组
    }

    /** Docket的apiInfo属性 */
    private ApiInfo apiInfo() {
        return new ApiInfo("我的Swagger接口文档", "我的Swagger接口描述", "V0.1", "http://mysite.com", new Contact("name", "url", "email"), "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", new ArrayList());
    }
}

使用

@RestController
@RequestMapping("site")
@Api(tags = "SiteController 说明")// 接口类说明
public class SiteController {
    @GetMapping("index")
    @ApiOperation("index 说明")// 方法说明
    public String index(@ApiParam("用户名") String username){ // 参数说明
        return "Hello "+username;
    }
}
@Data
@ApiModel("用户实体类")//实体类说明,若想在model中显示,接口中只要用到这个实体类就可以了
public class User {
    @ApiModelProperty("用户名")//属性说明
    private String username;
    private Integer age;
}

接口访问路径

http://localhost:8080/swagger-ui/

原文地址:http://www.cnblogs.com/Bin-x/p/16853232.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性