1.配置pom文件,在pom文件中引入swagger的相关依赖。
<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>
2.构建swagger配置类
/**
* Swagger使用的配置文件
*/
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
.paths(PathSelectors.any())
.build();
}
//基本信息的配置,信息会在api文档上显示
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("java-practice-api文档")
.description("项目接口文档")
.termsOfServiceUrl("http://localhost:9001")
.version("1.0.0")
.build();
}
}
3.在接口层增加对应的注解,这里我就直接使用controller层了
/**
* 测试控制层级
*/
@RestController
@RequestMapping("/test")
@Slf4j
@Api
public class TestController {
@Autowired
private UserServiceImpl userService;
@ApiModelProperty(value = "测试接口")
@PostMapping("/get")
public void get() {
userService.test();
}
}
4.生成后的效果(访问:http://localhost:9001/swagger-ui.html)
5.注意,如果出现以下问题
解决方法:在application.yml增加如下配置即可
spring: mvc: pathmatch: matching-strategy: ANT_PATH_MATCHER