我在Schema.avdl中拥有什么:
array<string> names = null;
Run Code Online (Sandbox Code Playgroud)
现在,我希望使用默认值而不是null来作为一个空数组,所以我尝试并失败了:
array<string> names = []; and array<string> names = {};
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我如何将一个空列表作为默认值吗?
谢谢。
array<string> names = [];适用于 Avro 1.8.2。这将在 JSON 中生成以下字段:
{
"name": "names",
"type": {
"type": "array",
"items": "string"
},
"default": []
}
Run Code Online (Sandbox Code Playgroud)
小智 5
我不确定这是否对您有直接帮助,但是在avro模式声明(.avsc)中,您可以编写以下内容:
{
"type": "record",
"namespace": "my.avro.schemas",
"name": "Schema",
"fields": [
{"name": "string_arr", "type": {"type": "array", "items": "string"}, "default": []}
]
}
Run Code Online (Sandbox Code Playgroud)
请注意,“默认”字段定义是一个空的json数组。默认情况下,使用已解析的Avro Schema类的构建器将在“ string_arr”字段中填充一个空数组。
| 归档时间: |
|
| 查看次数: |
5329 次 |
| 最近记录: |