环境集成
先引入相关依赖
1 | <!-- swagger --> |
Swagger2配置类
1 | /** |
Swagger注解使用场景
常用注解解释:
@ApiImplicitParams:用在方法上包含一组参数说明
@ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面,可以单独使用
paramType:参数放在哪个地方
header–>请求参数的获取:@RequestHeader
query–>请求参数的获取:@RequestParam
path(用于restful接口)–>请求参数的获取:@PathVariable
body(不常用)
form(不常用)
name:参数名
dataType:参数类型
required:参数是否必须传
value:参数的意思
defaultValue:参数的默认值
@ApiResponses:用于表示一组响应
@ApiResponse:只能用在@ApiResponses中,用于表达一个错误的响应信息
code:数字,状态码
message:提示信息
response:抛出的异常
生成实体model:
1 | "用户model", description = "用户实体") (value = |
【例】生成效果:
常用接口注解使用
状态响应信息
1 | (value = { |
修饰类:
@Api(tags = "用户管理", description = "系统用户管理相关接口")
修饰方法:
@ApiOperation(value = "添加用户", notes="管理员添加用户", httpMethod = "POST")
修饰参数:
单个普通参数
1
2
3
4
5
6"username", value = "用户名", required = true, dataType = "String", paramType = "query") (name =
或
"/find") (
public JsonResult add(@ApiParam(name = "username", value = "用户名", required = true) @RequestParam("username") String username){
//.....
}单个对象参数
1
2
3
4
5
6"user", value = "用户信息", required = true, dataType = "User", paramType = "body") (name =
或
"/add") (
public JsonResult add(@ApiParam(name = "user", value = "用户信息", required = true) @RequestBody User user){
//.....
}单个数组参数
@ApiImplicitParam(name = "userIds", value = "用户id数组", required = true, dataType = "int",allowMultiple = true)
多个参数
1
2
3
4
5({
"userIds", value = "用户id数组", required = true, dataType = "int",allowMultiple = true), (name =
"isAgree", value = "是否审批通过,1:通过,-1:拒绝", required = true, dataType = "int", paramType = "body"), (name =
"role", value = "用户角色", required = true, dataType = "String", paramType = "body") (name =
})
【注意】@ApiImplicitParam与@ApiParam修饰对象参数的区别
@使用ApiImplicitParam文档中无对象结构:
@使用ApiParam修饰对象时含对象json结构: