@ApiModel 和 @ApiModelProperty

本文介绍了Swagger中的两个关键注解:@ApiModel和@ApiModelProperty。@ApiModel用于标记实体类,提供Swagger模型的额外信息,而@ApiModelProperty则用于模型属性,详细描述属性信息。通过这两个注解,可以更好地文档化和测试RESTful API。文中还提供了使用场景和代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@ApiModel

使用场景:在实体类上边使用,标记类时swagger的解析类

1.什么是Swagger
OpenAPI规范(OpenAPI Specification 简称OAS)是Linux基金会的一个项目,试图通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发过程,目前版本是V3.0,并且已经发布并开源在github上。

Swagger是符合OpenAPI规范的接口开发工具,支持从设计和文档到测试和部署的整个API生命周 期的开发

概述

提供有关swagger模型的其它信息,类将在操作中用作类型时自动内省

属性名称

数据类型

默认值

说明

value

String

类名

为模型提供备用名称

description

String

" "

提供详细的描述

parent

void.class

为模型提供父类以允许描述继承关系

discriminatory

String

" "

支持模型继承和多态,使用鉴别器的字段的名称,可以断言需要使用哪个子类型

subTypes

{}

从此模型继承的子类型数组

reference

String

" "

指定对应类型定义的引用,覆盖指定的任何其他元数据

@ApiModelProperty

使用场景

使用在被 @ApiModel 注解的模型类的属性上

概述

添加和操作模型属性的数据

属性名称

数据类型

默认值

说明

value

String

" "

属性简要说明

name

String

" "

运行覆盖属性的名称。重写属性名称

required

boolean

" "

是否为必传参数,false:非必传参数; true:必传参数

example

String

" "

属性的示例值

代码示例:

@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "SysUserInfoResponse", description = "用户信息响应模型")
public class SysUserInfoResponse {
	
	@ApiModelProperty(value = "用户ID", required = true, example = "")
	private String userId;

	@ApiModelProperty(value = "用户名", required = false, example = "")
	private String userName;

	@ApiModelProperty(value = "所属部门Id", required = false, example = "")
	private String deptId;
	
	@ApiModelProperty(value = "所属公司", required = false, example = "")
	private String comId;

	@ApiModelProperty(value = "所属公司名称", required = false, example = "")
	private String comName;
	 
	@ApiModelProperty(value = "身份证号", required = false, example = "")
	private String idnum;

	@ApiModelProperty(value = "手机号", required = false, example = "")
	private String phone;

	@ApiModelProperty(value = "邮箱", required = false, example = "")
	private String email;
}

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值