Swagger2文档配置
先导入相关的依赖
<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>
swagger文档配置类
@Configuration
@EnableSwagger2
public class Swagger2 {
@Bean
public Docket createRestApi(){
return new Docket(DocumentationType.SWAGGER_2) //指定api类型为swagger2
.apiInfo(apiInfo()) //用于定义api文档汇总信息
.select()
.apis(RequestHandlerSelectors
.basePackage("com.wzl.Controller")) //指定controller包
.paths(PathSelectors.any()) //所有controller
.build();
}
private ApiInfo apiInfo(){
return new ApiInfoBuilder()
.title("电商平台接口api") //文档页标题
.contact(new Contact("wzl",
"www.wzl.com",
"666@777.com")) //联系人信息
.description("为电商平台提供的api接口文档") //详细信息
.version("1.0.1") //版本号
.termsOfServiceUrl("www.wzl.com")
.build();
}
}
现在有的controller
通过http://localhost:8088/swagger-ui.html 访问即可得到如下结果
(端口号改为自己程序的端口号)
这是原生的样子,我们可以换个“皮肤”
再加一个依赖
<!-- https://mvnrepository.com/artifact/com.github.xiaoymin/swagger-bootstrap-ui -->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.6</version>
</dependency>
然后通过http://localhost:8088/doc.html 访问
效果是这样的,是不是感觉更好看了
现在我们可以看到三个controller,如果我们想让其中某个controller在文档中不显示,则可以在相应的controller类上加上注解==@ApiIgnore==
比如我不想上面的额HelloController显示
最后文档里是没有HelloController的
给类加上@Api(value=“某某某”,tags = “某某某接口”)
则会有下面的效果
刚开始这样子的路由地址给非开发人员看还是比较难理解什么意思的
那我们可以给我们相应的方法名上面加上相应的注解
@ApiOperation
主要用于解释我们的方法是干什么的
我们也可以对我们的参数进行一个说明
最后效果如下