前面学习了两种 springboot 里面使用 swagger 的方法,一种原生的,一种大佬封装好的带 vue样式的,最近又学习到一种带 bootstrap 样式的,觉得还不错,这里分享出来
基于Swagger开发的Swagger-Bootstrap-UI
目录结构
上代码
一、引入 swagger-bootstrap-ui 的依赖
<!-- springboot web 相关依赖
-->
<dependency>
<groupId>org
.springframework
.boot
</groupId
>
<artifactId>spring
-boot
-starter
-web
</artifactId
>
</dependency
>
<!--swagger
-api 依赖开始
由于是springfox
-swagger的增强UI包
,所以基础功能依然依赖Swagger
,springfox
-swagger的jar包必须引入
-->
<dependency>
<groupId>io
.springfox
</groupId
>
<artifactId>springfox
-swagger2
</artifactId
>
<version>2.9.2</version
>
</dependency
>
<dependency>
<groupId>com
.github
.xiaoymin
</groupId
>
<artifactId>swagger
-bootstrap
-ui
</artifactId
>
<version>1.9.2</version
>
</dependency
>
二、编写 swagger 的配置文件
@Configuration
@EnableSwagger2
@EnableSwaggerBootstrapUI 可以使用EnableSwaggerBootstrapUI 的一些增强功能
public class SwaggerConfig {
@Bean
public Docket
createRestApi() {
return new Docket(DocumentationType
.SWAGGER_2
)
.apiInfo(apiInfo())
.groupName("基础模块")
.select()
.apis(RequestHandlerSelectors
.basePackage("com.wxw.springboot_swagger_bootstrapui.controller"))
.paths(PathSelectors
.any())
.build();
}
@Bean
public Docket
createMonitorRestApi() {
return new Docket(DocumentationType
.SWAGGER_2
)
.apiInfo(apiInfo())
.groupName("登录模块")
.select()
.apis(RequestHandlerSelectors
.basePackage("com.wxw.springboot_swagger_bootstrapui.loginController"))
.paths(PathSelectors
.any())
.build();
}
@Bean
public Docket
createActivitiRestApi() {
return new Docket(DocumentationType
.SWAGGER_2
)
.apiInfo(apiInfo())
.groupName("测试模块")
.select()
.apis(RequestHandlerSelectors
.basePackage("com.wxw.springboot_swagger_bootstrapui.testController"))
.paths(PathSelectors
.any())
.build();
}
private ApiInfo
apiInfo() {
return new ApiInfoBuilder()
.title("后台接口文档")
.description("后台接口文档描述")
.termsOfServiceUrl("http://www.wxw.com/")
.contact("wxw")
.version("1.0")
.build();
}
三、controller 中加入相关使用注解
@RestController
@RequestMapping("/test")
@Api(tags
= "测试", description
= "测试描述", value
= "测试")
public class TestController {
@GetMapping
@ApiOperation(value
= "测试", notes
= "测试")
public String
test() {
return "hello,swagger";
}
}
四、访问文档页面
swagger-bootstrap-ui默认访问地址是:http://
h
o
s
t
:
{host}:
host:{port}/doc.html
这样文档就出来了,文档中的功能就可以自己慢慢研究了
五、配置安全相关功能
1、比如说生产环境我们不需要开启文档
yml 文件中加入下面内容
# 如果需要屏蔽 swagger 资源
swagger
:
production
: true
再次访问浏览器文档地址,会输出这样的内容
2、配置用户名密码才能访问文档
swagger
:
basic
:
# 开启 认证功能
enable
: true
# 如果未配置用户名密码默认:admin
/123321
## Basic认证用户名
username
: wxw
## Basic认证密码
password
: 123
关注公众号查看更多资源