Spring Boot中使用Swagger3.0.0注解

举报
刘大猫 发表于 2025/11/26 22:38:51 2025/11/26
【摘要】 Spring Boot中使用Swagger3.0.0注解

image.png

四、注解说明

注意:注解中其实会有很多的属性,该文章只列出部分常用的属性而已,其他不常用属性请查看其他人博客!

@Api

@Api

@Api : 
    位置:用在请求的类上,例如Controller,
    作用:说明该类的主要作用。
    参数说明:@Api("tags":"", "value":"", "description ":"")
        tags:说明该类的作用,参数是个数组,可以填多个。
        value="该参数没什么意义,在UI界面上不显示,所以不用配置"
        description = "用户基本信息操作"

代码示例如下:

@RestController
@RequestMapping("/swagger")
@Api(tags = "用户管理")
@Slf4j
public class SwaggerController {}

网站效果展示:
image.png


@ApiOperation

@ApiOperation

@ApiOperation:
    位置:用在请求方法上
    作用:说明方法的用途、作用
    参数说明:@ApiOperation("value":"", "notes":"", "tags ":"")
        value="方法的用途和作用"
        notes="方法的注意事项和备注"			
        tags:说明该方法的作用, 参数是个数组,可以填多个。例如格式:tags={"作用1","作用2"}

代码示例如下:

@GetMapping("/getList")
@ApiOperation(value = "分页查询", notes = "分页查询的注意事项和备注", tags = {"说明该方法的作用1,说明该方法的作用2"})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){

网站效果展示:
image.png


@ApiImplicitParams

@ApiImplicitParams

@ApiImplicitParams: 
    位置:用在请求方法上
    作用:包含多@ApiImplicitParam,包含一组参数说明。
    参数说明:@ApiImplicitParams({@ApiImplicitParam("name":"", "value":"", "dataType":"", "paramType":"", "required":"")...})

代码示例如下:

@GetMapping("/getList")
@ApiOperation(value = "分页查询", notes = "分页查询的注意事项和备注", tags = {"说明该方法的作用1,说明该方法的作用2"})
@ApiImplicitParams({
    @ApiImplicitParam(name = "pageNo", value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
    @ApiImplicitParam(name = "pageSize", value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
    })
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){

@ApiImplicitParam

@ApiImplicitParam

@ApiImplicitParam:
    位置:用在请求方法上
    作用:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面说明
    参数说明:@ApiImplicitParam("name":"", "value":"", "dataType":"", "paramType":"", "required":"")
        name="参数名称"
        value="参数说明"
        dataType="数据类型",默认String
        required=true 参数是否必选
        paramType="query" 表示参数放在哪里,查询参数类型,这里有几种形式:
            header --> 请求参数的获取:@RequestHeader,参数在 request headers 里边提交
            query --> 请求参数的获取:@RequestParam,直接跟参数,完成自动映射赋值
            path(用于 restful 接口)--> 请求参数的获取:@PathVariable,以地址的形式提交数据
            body(不常用)--> 以流的形式提交 仅支持 POST
            form(不常用)--> 以 form 表单的形式提交 仅支持 POST

代码示例如下:

@GetMapping("/getList")
@ApiOperation(value = "分页查询", notes = "分页查询的注意事项和备注", tags = {"说明该方法的作用1,说明该方法的作用2"})
@ApiImplicitParams({
    @ApiImplicitParam(name = "pageNo", value = "当前页码,从1开始", paramType = "query", required = true, dataType="int") ,
    @ApiImplicitParam(name = "pageSize", value = "每页显示记录数", paramType = "query",required = true, dataType="int") ,
    })
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){

网站效果展示:
image.png


@ApiResponses

@ApiResponses

@ApiResponses:用在请求的方法上,表示一组响应

代码示例如下:

@GetMapping("/getList")
@ApiResponses({
     @ApiResponse(code=400,message="请求参数及格式不对"),
      @ApiResponse(code=404,message="请求路径没有或页面跳转路径不对")
    })
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){

@ApiResponse

@ApiResponse

@ApiResponse:用在@ApiResponses中,一般用于表达一个错误的响应信息
    code:数字,例如400
    message:信息,例如"请求参数没填好"
    response:抛出异常的类

代码示例如下:

@GetMapping("/getList")
@ApiResponses({
    @ApiResponse(code=400,message="请求参数及格式不对"),
    @ApiResponse(code=404,message="请求路径没有或页面跳转路径不对")
})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){

网站效果展示:
image.png

image.png


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。