@Schema 注解 参数详解
时间: 2023-10-27 21:50:57 浏览: 72
@Schema 注解是 OpenAPI 规范中的一部分,用于描述 API 的数据模型(数据结构)。该注解可以应用于类、属性、方法等上面。
下面是 @Schema 注解中常用的参数及其含义:
- name:指定该字段在 API 文档中的名称。
- title:指定该字段在 API 文档中的标题。
- description:指定该字段在 API 文档中的描述。
- format:指定该字段的数据格式,如日期格式等。
- type:指定该字段的数据类型,如字符串、整数、布尔值等。
- example:指定该字段的示例值,用于说明该字段的取值范围。
- defaultValue:指定该字段的默认值。
- accessMode:指定该字段的访问权限,可选值为 READ_ONLY、READ_WRITE、WRITE_ONLY。
- nullable:指定该字段是否可以为 null。
- required:指定该字段是否为必填字段。
- readOnly:指定该字段是否只读。
- writeOnly:指定该字段是否只写。
需要注意的是,@Schema 注解的参数可能因为不同的使用场景而有所不同,具体使用方式可以参考 OpenAPI 规范的相关文档或者具体的使用示例。
相关问题
@Schema中参数allowableValues 详解
在 @Schema 注解中,allowableValues 参数用于指定接受的值的范围,它可以用于枚举类型或者字符串类型的属性。该参数需要传入一个字符串数组,每个字符串都是一个有效的取值。如果在API文档中,用户输入的值不在可接受范围内,将会返回一个 400 Bad Request 错误。
例如,假设有一个请求体参数名为 gender,只接受 male 和 female 两个值,那么可以在对应的DTO类的 gender 字段上加上 @Schema 注解,并设置 allowableValues 参数为 {"male", "female"}。这样,在API文档中,用户在 gender 字段中输入其他值时,就会提示用户输入 male 或者 female。
示例代码如下:
```
public class UserDTO {
@Schema(description = "性别", allowableValues = {"male", "female"})
private String gender;
// getter 和 setter
}
```
@Schema注解的作用
根据提供的引用内容,@Schema注解是用于声明XML Schema的元素和属性的作用。XML Schema是一种规定XML文档实例结构和每个元素/属性数据类型的规范。@Schema注解可以用于定义XML文档的结构和内容模式。它可以通过声明元素和属性来指定文档的结构,使用特定的数据类型来定义元素和属性的数据类型。 <span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [详解Schema](https://blog.csdn.net/yuan_xw/article/details/7727548)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]