swagger作爲一個接口工具,方便前後端分離開發,搭建簡單。
pom文件,注意的是版本號,我框架用的是springboot,裏面版本不兼容,需要更換版本號。
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
swagger配置
這裏需注意,按需修改:
我是爲了進行token驗證,將一個參數放在了header裏。其他地方不需要改,直接copy就行。
tokenPar.name("Authorization").description("Authorization")
.modelRef(new ModelRef("string")).parameterType("header").required(false).build();
還有basePackage中要改路徑,按需修改,是爲了掃描controller
@Configuration
@EnableSwagger2
public class swaggerConfig {
@Bean
public Docket createRestApi() {
ParameterBuilder tokenPar = new ParameterBuilder();
List<Parameter> pars = new ArrayList<Parameter>();
tokenPar.name("Authorization").description("Authorization")
.modelRef(new ModelRef("string")).parameterType("header").required(false).build();
pars.add(tokenPar.build());
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("class路徑"))
.paths(PathSelectors.any())
.build().globalOperationParameters(pars) ;
}
@SuppressWarnings("deprecation")
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("個人測試")
.description("個人測試用api")
.termsOfServiceUrl("termsOfServiceUrl")
.contact("測試")
.version("1.0")
.build();
}
}
controller節選:不是必須
@API註解在類上,用於描述接口信息
@Api(value="測試接口Controller")
public class GoodsController {
@APIOperation註解在方法上,用於描述接口信息
@ApiOperation("最新")
public String getlist2(@Valid Good good , BindingResult bindResult){