1.pom.xml配置
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
2.java代码启用swagger配置
@EnableSwagger2 @Configuration public class SwaggerConfig { @Bean public Docket getDocket() { return new Docket(DocumentationType.SWAGGER_2) //.groupName("v1") .genericModelSubstitutes(DeferredResult.class) .useDefaultResponseMessages(false) .forCodeGeneration(true) .select() .apis(RequestHandlerSelectors.basePackage("com.auto.controller")) .build() .apiInfo(getApiInfo()); } private ApiInfo getApiInfo() { Contact contact = new Contact("test", "http://www.test.com", "[email protected]"); ApiInfo apiInfo = new ApiInfo("API接口",//大标题 "REST风格API",//小标题 "0.1",//版本 "www.test.com", contact,//作者 "主页",//链接显示文字 ""//网站链接 ); return apiInfo; } }
3.接口Controller swagger配置
@RestController @RequestMapping("/v1") @Api(description="文件上传接口") public class FileUploadController { @RequestMapping(value="/upload", method=RequestMethod.POST) @ApiOperation(value="上传文件到指定的路径下",response = ResponseObject.class, notes = "上传文件到指定的路径下") public ResponseObject<Object> cpicUpload(@ApiParam(value="文件名称")@RequestParam(required=false) String name, @ApiParam(value="文件",required=true)@RequestParam(required=true) MultipartFile file){ logger.info("进入上传文件接口,开始上传文件。。。。。。name:{}",name); //自己逻辑 }
4.运行入口
@SpringBootApplication public class AutoFileApplication extends SpringBootServletInitializer implements CommandLineRunner { @Override public void run(String... args) throws Exception { } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(AutoFileApplication.class); } public static void main(String[] args) { SpringApplication.run(AutoFileApplication.class, args); } }
5.访问
http://localhost:8080/swagger-ui.html
6.效果如下图