如何在Springboot Java项目中引入Swagger插件

原创     发表于 2020-10-15 16:42     阅读 104  

如今的Java项目开发,Springboot/Springcloud、Swagger已经成为了标配,下面我们来说说如何在项目中引入Swagger……

引入Swagger只需要以下3步,即可使用Swagger提供的功能,并不复杂。

1、在pom.xml中引入Swagger的maven依赖
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.8.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>27.0.1-jre</version>
</dependency>

注意:这里我们显式的引入了 com.google.guava 的maven依赖,如果不显式引入,可能会报错,提示找不到!

2、创建SwaggerConfig文件,并且实现 createRestApi() 方法
/**
* Swagger 接口配置
*/
@EnableSwagger2
@Configuration
public class SwaggerConfig {

@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).pathMapping("/")// base,最终调用接口后会和paths拼接在一起
.select()
.apis(RequestHandlerSelectors.any()).paths(or(regex("/.*"))).build()
.enable(SystemConstant.getRunDevEnv())
.apiInfo(createApiInfo());
}

private ApiInfo createApiInfo() {

Contact contact = new Contact("", "", "");

return new ApiInfoBuilder().title("系统标题")// 大标题
.description("描述")// 详细描述
.version("V1.0")// 版本
.termsOfServiceUrl("主页").contact(contact)
.license("")
.licenseUrl("").build();
}

}
3、在 Controller 接口文件中,注解 Swagger 信息
@Api(tags = {"信息添加接口"})
@RestController
@RequestMapping("info/companyInfo")
public class CompanyInfoController {

@Resource
private ICompanyInfoService companyInfoService;

@GetMapping("add")
@ApiOperation(value = "添加", produces = "application/json")
public void add() {
this.companyInfoService.add();
}
}


通过上面3个步骤,我们已经成功在Springboot Java项目引入了Swagger插件,浏览器访问URL地址:http://127.0.0.1:8080/swagger-ui.html,打开页面可以看到配置的接口说明信息。