Swagger注解使用介绍,Swagger在controller中的使用,get/post方法怎么使用Swagger注解。
话不多说上代码 。
第一步:配置Swagger环境。
biz层放入依赖
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
<version>1.5.20</version>
<scope>compile</scope>
</dependency>
web业务层放入依赖。
<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.9.2</version>
</dependency>
第二步:配置Swagger配置文件。
/**
* @author xcc
*/
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Value("${swagger.enable:true}")
private Boolean swaggerEnable;
@Bean
public Docket swaggerApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.enable(swaggerEnable)
.select()
.apis(RequestHandlerSelectors.basePackage("com.***.***.web.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Swagger标题名")
.contact(new Contact("xcc", "", "xcc@qq.com"))
.description("API文档")
.version("1.0.0-SNAPSHOT")
.build();
}
}
上述步骤完成以后就可以进行Swagger的使用了。
第三步:Swagger在model中的使用。
/**
* <p>
* 示例
* </p>
*
* @author xcc
* @since 2020-06-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class TestDto extends BaseModel {
/**
* 主键
*/
@TableId
@ApiModelProperty(value = "主键")
private Integer id;
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
private String name;
/**
* 手机号
*/
@ApiModelProperty(value = "手机号")
private String phone;
/**
* 地址
*/
@ApiModelProperty(value = "地址")
private String address;
}
第四步:Swagger在controller中的使用。
/**
* @author: xcc
* @date:2020/6/1
*/
@Slf4j
@Controller
@RequestMapping("/testController")
@Api(tags = "Swagger在controller中的使用")
public class TestController extends BaseController {
@GetMapping("/getTest")
@ApiOperation(value = "get请求示例", response = TestDto.class)
@ApiImplicitParams({
@ApiImplicitParam(dataType = "Integer", name = "id", value = "主键id"),
@ApiImplicitParam(dataType = "String", name = "name", value = "姓名")
})
public Response<Boolean> pageDocReceiveRecord(Page page, Integer id, String name) {
return Response.success(true);
}
@PostMapping("/postTest")
@ApiOperation(value = "post请求示例")
public Response<User> updateTest(@RequestBody @ApiParam(value = "testDto ", name = "放入准备的DTO参数类")
TestDto testDto ) {
Integer id = testDto .getId();
User user = userService.getUserById(id);
return Response.success(user);
}
}
第五步:访问Swagger。
访问地址:http://127.0.0.1:8087/swagger-ui.html#/
注:8087是启动的项目的端口号,请正确填写您的项目端口号。
get打开后:
后面的操作步骤按照提示来就行了。
post请求同理,按照规定来就可以了。
如果还是不理解,请参考:参考地址