Можно ли сериализовать объект в JSON, используя метод toString без специального сериализатора? - PullRequest
0 голосов
/ 15 ноября 2018

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

public class JsonUser {

    private final String id;
    private final String email;

    public JsonUser(String id, String email) {
        this.id = id;
        this.email = email;
    }

    @Override
    public String toString() {
        JsonObject json = new JsonObject();
        json.addProperty("id", user.id());
        json.addProperty("email", user.email());
        return json.toString();
    }

}

Как видите, JsonUser::toString возвращает строку JSON.Мне интересно, есть ли способ сказать Джексону сериализовать JsonUser, вызывая метод toString вместо полей / свойств.

Возможно ли достичь этого без использования * 1010?* с пользовательским сериализатором?

1 Ответ

0 голосов
/ 17 ноября 2018

Если вы аннотируете метод toString() с помощью @JsonValue, Джексон будет использовать его для сериализации.Вы также можете аннотировать конструктор String с помощью @JsonCreator для десериализации.

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