![](/img/trans.png)
[英]Generate classes with decimal datatype with avro-maven-plugin 1.9.0
[英]Avro maven plugin for optional fields
我正在使用 Avro maven 插件來處理一些 Avro 文件並生成 Java 類。 我的目標是通過聲明類型 null 來告訴插件在字段接受 null 值時生成可選 getter。 例如:
{
"namespace": "br.com.gruposaga.core.event",
"type": "record",
"name": "UserEvent",
"fields": [
{
"name": "id",
"type": "int"
},
{
"name": "name",
"type": "string"
},
{
"name": "email",
"type": [
"null",
"string"
],
"default": null
}
]
}
因此,在上面提到的定義中,插件應該為 id 和 name 生成默認的 getter。 但是對於電子郵件,可以是 null,我希望插件只生成可選的 getter。 我在插件中嘗試了 gettersReturnOptional 和 createOptionalGetters 配置,但它們都沒有做到這一點。 那么,怎么做呢?
我設法通過自定義 record.vm 速度模板來獲得這種行為。 更換
#if (${this.gettersReturnOptional})
和
#if ($field.schema().isNullable())
成功了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.