Springboot整合Swagger2组件
本篇文章介绍了如何使用Swagger2组件动态生成API接口文档,降低前后端开发人员的沟通成本,从而达到高效开发的目的。

配置Swagger2组件
首先,在pom.xml中添加以下依赖:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.4.0</version>
</dependency>
然后,在配置类中启用Swagger2:
@Configuration
@EnableSwagger2
public class Swagger2Config implements WebMvcConfigurer {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
.apis(RequestHandlerSelectors.basePackage("task.web")).paths(PathSelectors.any()).build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("SimpleAPIs").description("simpleapis")
.termsOfServiceUrl("http://www.***").contact(new Contact("d***","http://***","***@shsnc.com"))
.version("1.0").build();
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}
测试Controller
在测试Controller中添加Swagger注解:
@Controller
@RequestMapping("/test")
@Api(tags="用户接口")
public class TestController {
@GetMapping("/login")
@ApiImplicitParams({@ApiImplicitParam(name="username",value="用户名",paramType="query"),
@ApiImplicitParam(name="password",value="密码",paramType="query")})
@ResponseBody
@ApiOperation(value="用户登陆接口")
public String login(@RequestParam("username")String username,@RequestParam("password")String password){
if ("shsnc".equals(username)&&"123456".equals(password)) {
return "登陆成功";
}else {
return "登陆失败,用户名不存在或者密码错误";
}
}}
最后,在启动工程后,访问http://ip:port/contextName/swagger-ui.html,即可看到动态生成的API接口文档。
本文介绍了如何使用SpringBoot整合Swagger2组件,动态生成API接口文档,达到降低沟通成本,提高项目开发效率的目的。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6093.html
