Springboot集成swagger2
1.pom.xml添加dependency
<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> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>25.1-jre</version> </dependency>
2.新建SwaggerConfig类
@Configuration @EnableSwagger2 @EnableAutoConfiguration public class SwaggerConfig { @Bean public Docket createRestApi(){ return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()).build(); } private ApiInfo apiInfo(){ return new ApiInfoBuilder() .title("IMS API 文档") .description("ims system api document.") .version("1.0") .build(); } }
3.新建WebMvcConfig类
@Configuration public class WebMvcConfig extends WebMvcConfigurationSupport { @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger-ui.html") .addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**") .addResourceLocations("classpath:/META-INF/resources/webjars/"); } }
4.创建controller
@Api(value = "Demo接口示例") @RestController @RequestMapping("/pub/v1/api") public class DemoController extends BaseController { @Autowired private IDemoService demoService; @PostMapping("save") @ApiOperation(value = "保存", notes = "保存") public AjaxResult save(@RequestBody Demo model) { if (null == model) { return error("参数不允许为空"); } if(StringUtils.isNullOrEmpty(model.getId())){ model.setId(UUID.randomUUID().toString()); } boolean result = demoService.save(model); if (result) { return success("保存成功"); } else { return error("保存失败"); } } }
5.运行结果