目录
1.导入依赖
之前写过一篇,怎么创建Spring-boot项目的文章,需要的可以去看一下,接下来,在项目的pom.xml中引入依赖,我的这里是maven导入,没有maven的可以去下载一下jar包,学到这里不会没有的了应该。
<!--swagger2-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
2.创建config文件,编写基本配置
我这里是在
3.编写swagger2config文件,做基本配置
@Configuration 作用:告诉启动类这是个配置文件
@EnableSwagger2 作用:自动装配swagger2
在yml中配置
#配置swaggerApi文档是否开启
swagger:
enable: true
@Configuration
@EnableSwagger2
//这里是我的配置文件控制开关的
@ConditionalOnProperty(name = "swagger.enable",havingValue = "true")
public class Swagger2Config {
@Bean
public Docket createRestApi(){
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//自动扫描com下的api
.apis(RequestHandlerSelectors.basePackage("com"))
.paths(PathSelectors.any())
.build();
}
/**
*
* @return API文档页面的显示内容
*/
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
//页面标题
.title("小小程序家公众号")
//创建人
.contact(new Contact("orency","自己的url,在页面显示"))
//版本号
.version("1.0")
//描述
.description("swagger2的基本使用")
.build();
}
}
上面的东西可以直接粘贴,直接用,显示内容可以自行更改
4.Controller的api基本配置
我使用的时候用不了Api注解
然后加上了
<!--日志依赖-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
就可以了,按理说不应该啊,反正也要用这个依赖,果断加上了
在Controller上加上这个注解,会展示整个大标签,我不做展示了,大家可以自己去试试
然后方法上加上
之后项目启动访问:http://localhost:8088/swagger-ui.html 就可以看到自己的接口列表和测试了,记着改为自己的端口。
在给大家来一点:
配置swagger2核心配置 docket,主要是添加要扫描controller的路径
4.swagger的儿子knife4j继承了父亲的功能,而且还好看
感觉界面丑的,可以去找一下美化依赖,或者使用knife4j,swagger的儿子,更好看;
knife4j最新稳定版本:
<!--knife4jApi文档依赖-->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.9</version>
</dependency>
直接把swagger的依赖换成这个就可以,然后配置的config中的注解会报错,换成@EnableSwagger2WebMvc就好了,页面好看的不是一点点,当然对页面没啥要求的当我没说;
俗话说,越好看的越麻烦,knife4j在好看的基础上会出现不正常,当然你只要在每个实体类开头加上@ApiModel(value = "自己规定")
和每个属性加上,@ApiModelProperty(value = "自己的字段解释就可以了")
然后访问地址:http://localhost:8080/doc.html
到这里,swagger2的学习就结束了,谢谢大家观看,可以 给我一个小小的赞嘛,感谢感谢!