package com.cm.common.config; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.bind.annotation.RequestMethod; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.builders.ResponseMessageBuilder; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.ResponseMessage; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import java.util.ArrayList; import java.util.List; /** * @ClassName: SwaggerConfig * @Description: swagger的配置文件 * @Author: WangGeng * @Date: 2019/3/1 3:58 PM * @Version: 1.0 **/ @Configuration public class SwaggerConfig { @Value("${swagger.title}") private String swaggerTitle = "相关接口文档"; @Value("${swagger.description}") private String swaggerDescription = "相关接口文档"; @Value("${swagger.service-url}") private String swaggerServiceUrl = "http://http://www.sucstep.com/"; @Value("${swagger.version}") private String swaggerVersion = "1.0"; @Value("${swagger.swagger-base-package}") private String swaggerBasePackage = "com.cm"; @Bean public Docket createRestApi() { List responseMessageList = new ArrayList<>(); responseMessageList.add(new ResponseMessageBuilder().code(400).message("请求失败").build()); responseMessageList.add(new ResponseMessageBuilder().code(404).message("请求不存在").build()); responseMessageList.add(new ResponseMessageBuilder().code(503).message("服务不可用").build()); return new Docket(DocumentationType.SWAGGER_2) .globalResponseMessage(RequestMethod.POST, responseMessageList) .globalResponseMessage(RequestMethod.DELETE, responseMessageList) .globalResponseMessage(RequestMethod.PUT, responseMessageList) .globalResponseMessage(RequestMethod.GET, responseMessageList) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage(swaggerBasePackage)) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title(swaggerTitle) .description(swaggerDescription) .termsOfServiceUrl(swaggerServiceUrl) .version(swaggerVersion) .build(); } }