一:创建SpringBoot ,在pom.xml文件中加入jar包
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
二:简历Swagger2的配置类
@EnableSwagger2 //注入swagger2
@Configuration //beans
public class SwaggerConfig {
@Bean //bean
public Docket createRestApi(){
return new Docket(DocumentationType.SWAGGER_2)
.groupName("apigrounp1")
.apiInfo(apiInfo())//组名
.select()//选择那些路劲和api生成document
.apis(RequestHandlerSelectors.basePackage("com.hp.springbootswagger.controller"))
.paths(PathSelectors.any())//对所有路劲渐行监控
.build();
}
//构建api文档的详细信息方法
public ApiInfo apiInfo(){
return new ApiInfoBuilder()
.title("Spring boot测试使用Swagger2构建RestFulApi")//页面标题
.contact(new Contact("浩明","https://www.baidu.com","1343876119@qq.com"))//创建人
.version("1.0")//版本号
.description("API描述")//api描述
.build();//构建
}
}
三:controller层:result风格
@Api(value="person" ,description="针对用户的插入,删除,查看等操作")
类上面:
@ApiOperation(value ="创建用户",notes = "根据用户User创建用户")
@ApiImplicitParams({
@ApiImplicitParam(dataType = "java.long.Lang",paramType = "path",name = "id",value = "id",required = true),
@ApiImplicitParam(dataType = "User",name = "user",value = "用户",required = true)
})
方法上:
四:swagger2的相关注解的解释如下:
- @Api:修饰整个类,描述Controller的作用
- @ApiOperation:描述一个类的一个方法,或者说一个接口
- @ApiParam:单个参数描述
- @ApiModel:用对象来接收参数
- @ApiProperty:用对象接收参数时,描述对象的一个字段
- @ApiResponse:HTTP响应其中1个描述
- @ApiResponses:HTTP响应整体描述
- @ApiIgnore:使用该注解忽略这个API
- @ApiError :发生错误返回的信息
- @ApiImplicitParam:一个请求参数
- @ApiImplicitParams:多个请求参数
swagger-ui页面请求:http://localhost:8080/swagger-ui.html
学着把生活的苦酒当成饮料一样慢慢品尝,
不论生命经过多少委屈和艰辛,
我们总是以一个朝气蓬勃的面孔,
醒来在每一个早上。