- Swagger2是一款restful接口文档在线生成和在线接口调试工具,下面是在一个Spring Boot项目中引入Swagger2的简要示例。
一、在pom.xml添加如下maven依赖
<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.8.0</version>
</dependency>
二、Swagger配置类
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
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 Swagger2Config {
/**
* 添加摘要信息
*/
@Bean
public Docket controllerApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(new ApiInfoBuilder()
.title("接口文档")
.description("描述:Swagger接口文档")
.contact(new Contact("马腾蛟", null, null))
.version("版本号:1.0")
.build())
.select()
.apis(RequestHandlerSelectors.basePackage("com.mtjsoft.www.springbootmybatisredis.controller"))
.paths(PathSelectors.any())
.build();
}
}
三、接口注释示例
@Api("用户信息管理")
@RestController
@ResponseBody
@RequestMapping(value = "/api", produces = "application/json;charset=UTF-8")
public class UserController {
@Autowired
private UserServiceImp userServiceImp;
@ApiOperation("根据id获取用户信息")
@GetMapping(value = "/getUserById")
public HttpResult getUserById(@RequestParam("id") int id) {
return ResultUtil.success(userServiceImp.selectByPrimaryKey(id));
}
}
四、运行项目,查看效果
// 启动项目后,在浏览器访问
// 端口号换成自己的。
http://localhost:8081/swagger-ui.html#/
Ok完成。本人微信号,有问题可以添加交流。