Сгенерируйте пользовательский установщик lombok или intelliJ - PullRequest
0 голосов
/ 14 сентября 2018

У меня есть класс Dto, как это:

@Setter @Getter
public class UserDTO {

    private String firstName;

    private String lastName;

}

и я читаю где-то, когда никакое поле не отправляется Джексону, мы можем получить изменение следующим образом:

public boolean isModifiedFirstName = false;

public void setFirstName(String firstName) {
    this.isModifiedFirstName = true;
    this.firstName = firstName;
}

Как сгенерировать этот код с помощью lombok? или даже шаблон intelliJ не генерирует логическое поле isModified

для моей проблемы, как получить JSON Field отправляются Джексону, как это:

{
"firstName":null,
"lastname":"someName"
}

diffrent с:

{
"lastName" : "someName"
}

Я ищу, как получить нулевое значение Джексона, а не определенное поле и найденный может получить различные значения в методе установки.

теперь мне нужен пользовательский установщик для моих DTO, чтобы получить нулевые и неопределенные поля json. спасибо

Ответы [ 2 ]

0 голосов
/ 16 сентября 2018

Вы можете инициализировать свойства, отличные от null:

@Setter @Getter
public class UserDTO {

    private String firstName = "empty";

    private String lastName = "empty";

}

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

0 голосов
/ 15 сентября 2018

У Lombok нет возможности генерировать поля в стиле 'isChanged'. Тебе придётся выписать это в длинной форме.

Я не понимаю, зачем тебе это здесь; если вход JSON имеет значение null, тогда он просто окажется на стороне java как null, и это, как вы знаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...