Spring boot项目集成swagger

1.引入jar包
<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>
<!-- 引入了第三方的UI界面美化jar包,不是必须的 -->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.6</version>
</dependency>
2.在application的同级目录下创建SwaggerConfig文件
@Configuration // 标注此类是一个配置类
@EnableSwaggerBootstrapUI//设置用户名 密码
@ComponentScan(basePackages = {"com.chiefclouds.yybrandmiddle.controller"}) // 扫描要加载的包路径
public class SwaggerConfig {
@Value("${swagger.basic.enable}")
private Boolean enable;
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.pathMapping("/")
.enable(enable)//控制生产环境关闭 swagger
.select() // 选择那些路径和api会生成document
.apis(RequestHandlerSelectors.basePackage("com.chiefclouds.yybrandmiddle.controller"))//对controller下所有api进行监控
//不显示错误的接口地址
.paths(Predicates.not(PathSelectors.regex("/error.*")))//错误路径不监控
.paths(PathSelectors.regex("/.*"))// 对根下所有路径进行监控
.build();
}
 
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("******")//文档标题
.description("中间件对外接口文档")//文档说明
.version("2.0")//文档版本说明
.build();
}
}
3.在application的同级目录下创建SwaggerMvcConfig文件
// 配置相关的访问映射
@EnableSwagger2
@Configuration
@ComponentScan(basePackages = {"com.chiefclouds.yybrandmiddle.controller"})
public class SwaggerMvcConfig extends WebMvcConfigurationSupport {
 
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
 
// 配置前端访问此路径,映射到 springfox-swagger-ui-2.6.1.jar下面的:META-INF esourcesswagger-ui.html
registry.addResourceHandler("doc.html")//访问路径
.addResourceLocations("classpath:/META-INF/resources/");
 
// 加载swagger-ui.html同级目录下webjars下相关的前端代码(css、js、fonts、images...)
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}
配置文件中
swagger:
production: false
basic:
enable: true//正式环境设置为false 可以关掉swagger
username: admin
password: admin
原文地址:https://www.cnblogs.com/yxj808/p/14511714.html