1.添加pom
<!--swagger--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> </dependency> <!--swagger 增强界面--> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.8.7</version> </dependency>
2.配置swagger配置类
package com.coding.mall.config; import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI; import com.google.common.base.Predicates; 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.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 @EnableSwaggerBootstrapUI //第三方swagger增强API注解 public class Swagger2Config { //核心对象 Docket /** * 前端 * @return */ @Bean public Docket webApiConfig() { // 过滤掉 /admin 的所有请求 return new Docket(DocumentationType.SWAGGER_2) .groupName("webApi") .apiInfo(webApiInfo()) .select() .paths(Predicates.not(PathSelectors.regex("/admin/.*"))) .paths(Predicates.not(PathSelectors.regex("/error.*"))) .build(); } private ApiInfo webApiInfo() { // 建造者模式 return new ApiInfoBuilder() .title("艾编程商城-产品中心API文档") .description("产品中心微服务!") .version("1.0") .contact(new Contact("Coding", "http://icodingedu.com", "coding666@qq.com")) .build(); } // 后台管理员的 @Bean public Docket adminApiConfig() { // 只要 /admin 的所有请求 return new Docket(DocumentationType.SWAGGER_2) .groupName("adminApi") .apiInfo(adminApiInfo()) .select() .paths(Predicates.and(PathSelectors.regex("/admin/.*"))) .build(); } private ApiInfo adminApiInfo() { // 建造者模式 return new ApiInfoBuilder() .title("艾编程商城-产品中心管理端API文档") .description("产品中心微服务管理中心!") .version("1.0") .contact(new Contact("Coding", "http://icodingedu.com", "coding666@qq.com")) .build(); } }
3.访问地址
如未使用增强ui, 则访问路径为: http://localhost:8080/swagger-ui.html (默认)
增强UI 访问路径: http://localhost:8080/doc.html
官方文档:http://www.xiaominfo.com/swagger-bootstrap-ui/