上文中已经导入了相关依赖,现在我们开始创建一个swagger配置类
package com.example.swagger;
import java.util.Collections;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("com.example.swagger"))
.paths(PathSelectors.ant("/api/*"))
.build()
.apiInfo(apiInfo());
}
private ApiInfo apiInfo() {
return new ApiInfo(
"Test API",
"api文档生成测试",
"0.0.1",
"https://www.baidu.com",
new Contact("Mike", "www.example.com", "1371007696.com"),
"My license",
"https://www.baidu.com",
Collections.emptyList());
}
}
其中RequestHandlerSelectors.basePackage(“com.example.swagger”) 是要扫描的包名,PathSelectors为过滤的路径,有any(), none(), regex(), ant().
启动spring boot 内置服务器
网址输入http://localhost:9999/swagger-ui.html(端口最定义设定)
显示以下结果证明配置已经成功
接下来建一个controller类测试一下。
package com.example.swagger;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(value="/api")
public class TestController {
@RequestMapping(value="/test1",method = RequestMethod.POST)
public String test() {
return "Api test";
}
}
重启服务器再看一下效果
刚刚建立的controller接口信息就在这里,点开之后就可以看到参数以及返回值等详细信息。
简单的swagger使用就介绍到这,以后会介绍一些高阶的使用