Как добавить значения по умолчанию для входящих переменных, имеющих пустое строковое значение, в Gson serialize / deserialize, когда я использую lombok? - PullRequest
0 голосов
/ 02 апреля 2019

Вот класс

package com.bablo.domain;

import com.google.gson.annotation.SerializedName;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;


@Getter @Setter
@ToString
public class PC {

   @SerializeName("name")
   private String name;

   @SerializeName("model")
    private String model;

   @SerializeName("processor")
    private String processor;
}

В приведенном выше атрибуте класса для модели может быть указана пустая строка в json, как присвоить ей значение по умолчанию во время сериализации и десериализации.

То есть в теле запроса json значение ключа модели может иметь пустую строку в качестве значения, как его прочитать и вместо этого поместить значения по умолчанию вместо пустой строки в атрибуте класса.

Должен ли я отключить lombok и добавить в мой класс собственные методы получения и установки для переопределения значений по умолчанию?

Или есть ли в Gson какая-либо аннотация для достижения этой цели?

Или в lombok есть некоторыеКак обойти это?

1 Ответ

1 голос
/ 02 апреля 2019

Возможно, вам нужно использовать аннотацию lombok Builder здесь.Как то так:

@Getter @Setter
@ToString
class PC {

    @SerializedName("name")
    @Builder.Default
    private String name = "name1";

    @SerializedName("model")
    @Builder.Default
    private String model = "model1";

    @SerializedName("processor")
    @Builder.Default
    private String processor = "processor1";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...