在前后端分离开发的模式下,api文档是最好的沟通方式。swagger是一个非常好的选择,它不仅方便后端工作人员在没有前端界面的时候对功能进行简单的测试,还方便前端人员根据其生成的api文档直接使用接口,不用在去看后台繁杂的代码,只管使用接口,减轻了前端工作人员的工作。
swagger使用步骤:
1、引入依赖
<!--swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<scope>provided </scope>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<scope>provided </scope>
</dependency>
2、添加配置类
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket webApiConfig(){
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("SVN系统-API文档")
.description("本文档描述了SVN系统接口定义")
.version("1.0")
.contact(new Contact("java", "www.baidu.com", "2609417544@qq.com"))
.build();
}
}
3、记得在启动类上加上组件扫描,把配置类扫进去
4、简单的几个注解
@Api(description="讲师管理")-----作用在类上面,备注类
@ApiOperation(value = "所有讲师列表")-----作用在方法上,备注方法
@ApiModel(value="EduChapter对象", description="课程")-----作用在实体类上
@ApiModelProperty(value = "章节ID")------作用在变量上