一、依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
swagger3跟2不同只需导入一个这个依赖就行,不需要另外ui等依赖
二、配置
启动类添加@EnableOpenApi
注解
@EnableOpenApi
@SpringBootApplication
public class Swagger3DemoApplication {
public static void main(String[] args) {
SpringApplication.run(Swagger3DemoApplication.class, args);
}
}
swagger配置
@Configuration
public class SwaggerConfig {
@Bean
public Docket initDocket(Environment env) {
//设置要暴漏接口文档的配置环境
Profiles profile = Profiles.of("dev", "test");
boolean flag = env.acceptsProfiles(profile);
return new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
.enable(flag)
.groupName("JS")
.select()
.apis(RequestHandlerSelectors.basePackage("cn.yjs.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("JsTeam的接口文档")
.description("技术支持-**圣")
.contact(new Contact("JsTeam", "#", "1204****740@qq.com "))
.version("1.0")
.build();
}
}
看着这些代码,点到源码看一下,再结合网站的展示大概就都能猜出来是什么。这里值得注意得是 一下这部分代码
.select()
.apis(RequestHandlerSelectors.basePackage("cn.yjs.controller"))
.paths(PathSelectors.any())
这里是对controller的扫描,还有很多方法,可以根据自己喜欢来确定扫描方式。
三、model的显示
只需要在controller中返回对象,ui界面便会自己跳出来,非常简单。
还有一些注释解释,可参考下面这个博客:总结的非常好:
swagger3的ui界面与swagger2的地址不同了:
swagger2:localhost:8080/swagger-ui.html
swagger3:Swagger UI