io.springfox
springfox-swagger2
2.9.2
io.springfox
springfox-swagger-ui
2.9.2
2、配置swagger
swagger只有一个实体类Docket
@Configuration
@EnableSwagger2
public class ConfigSwagger {
//配置swagger中dolect的bean
@Bean
public Docket docket(Environment environment){
Profiles profiles = Profiles.of("pro");
// 通过accept判断是否在环境中
boolean falg = environment.acceptsProfiles(profiles);
System.out.println(falg);
return new Docket(documentationType.SWAGGER_2)
.apiInfo(apiInfo())
// 分组的名称
.groupName("人人")
// 是否启动swagger 使用布尔值
.enable(true)
// 配置要扫描的接口
.select()
// 扫描接口的方式
// basePackage()扫面接口包
// any扫面所有
// none都不扫描
.apis(RequestHandlerSelectors.basePackage("com.ren.controller"))
.build();
}
// 配置swagger信息=apiInfo
private ApiInfo apiInfo(){
// 作者信息
Contact contact = new Contact("人人", "www.baidu.com", "1203537869@qq.com");
return new ApiInfo("人人写的api接口",
"人人Api", "v1.0",
"urn:tos",
contact,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0",
new ArrayList());
}
}
每一个Docket只能有一个分组名称(.groupName),但是可以设置多个Docket实体类
3、Api提供的注解@ApiModel(”注释内容用在pojo类上“)和@Api("")相似
@ApiOperation("注释用在方法上")
@ApiPagam("参数注释")
只要返回值存在实体类就会被扫描,
4、小总结1)、swagger可以给一些比较难懂的代码加上注解
2)、接口文档可以实时更新
3)、可以在线进行测试
5、注意点在项目发布前要关闭swagger 防止用户看到接口,进行调用!!(.enable(false))



