发布时间:2024-09-04 16:01
Swagger依赖包
<dependency>
<groupId>io.springfoxgroupId>
<artifactId>springfox-swagger2artifactId>
<version>2.9.2version>
dependency>
<dependency>
<groupId>io.springfoxgroupId>
<artifactId>springfox-swagger-uiartifactId>
<version>2.8.0version>
dependency>
<dependency>
<groupId>com.github.xiaoymingroupId>
<artifactId>swagger-bootstrap-uiartifactId>
<version>1.9.6version>
dependency>
package com.sh.content.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
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;
/**
* @author shs-xxaqbzylh4
*/
@Configuration
@EnableSwagger2
@Profile(\"test\") // todo 这个是分环境来访问的,test代表只能在测试环境访问swagger
public class SwaggerConfig {
/**
* 创建API应用
* apiInfo() 增加API相关信息
* 通过select()函数返回一个ApiSelectorBuilder实例,用来控制哪些接口暴露给Swagger来展现,
* 本例采用指定扫描的包路径来定义指定要建立API的目录。
*
* @return
*/
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage(\"com.baidu.content-back.controller\"))
.paths(PathSelectors.any())
.build();
}
/**
* 创建该API的基本信息(这些基本信息会展现在文档页面中)
* 访问地址:http://127.0.0.1:7021/content-back/doc.html todo content-back 是我的项目路径
*
* @return
*/
private ApiInfo apiInfo() {
Contact contact = new Contact(\"name\", \"网址\", \"邮箱\");
return new ApiInfoBuilder()
.title(\"标题\")
.description(\"描述\")
.termsOfServiceUrl(\"http://127.0.0.1:7021/content-back/doc.html\")
.contact(contact)
.version(\"1.0\")
.build();
}
}
启动项目访问地址http://127.0.0.1:7021/content-back/doc.html
分环境访问问题,test是我的测试环境,大家根据实际情况来,而且这种只是接口文档不会加载,其他css还是会加载的,如果有其他硬性要求建议换方案来实现接口文档仅在测试环境访问