forked from coderbruis/JavaSourceCodeLearning
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSwaggerConfig.java
More file actions
64 lines (55 loc) · 2.18 KB
/
SwaggerConfig.java
File metadata and controls
64 lines (55 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package com.bruis.springsecurity.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.ParameterBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.schema.ModelRef;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Parameter;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
import java.util.List;
/**
* @author LuoHaiYang
*/
@Configuration
@EnableSwagger2
public class SwaggerConfig {
public static final String AUTHORIZATION = "Authorization";
public static final String MODELREF = "string";
public static final String PARAMETERTYPE = "header";
public static final String TITLE = "SpringSecurity学习";
public static final String DESCRIPTION = "Learn more about SpringSecurity!";
public static final String VERSION = "1.0";
@Bean
public Docket createRestApi() {
// 添加请求参数, 把token作为请求头参数
ParameterBuilder builder = new ParameterBuilder();
List<Parameter> parameters = new ArrayList<>();
builder.name(AUTHORIZATION)
.description("请求令牌")
.modelRef(new ModelRef(MODELREF))
.parameterType(PARAMETERTYPE)
.required(false)
.build();
parameters.add(builder.build());
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.globalOperationParameters(parameters);
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title(TITLE)
.description(DESCRIPTION)
.version(VERSION)
.build();
}
}