Джексон сериализует свойства суперкласса как вложенный элемент дочернего объекта?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Джексон сериализует свойства суперкласса как вложенный элемент дочернего объекта?

Сообщение Anonymous »

Я пытаюсь согласовать некоторую потоковую передачу json из классов, производных от XSD, таким образом, чтобы это было удобно для protobuf.
XDS были созданы с использованием элементов, которые наследуются от суперкласса/ дочерние классы.

Эквивалент Protobuf был определен с использованием содержащихся «базовых» элементов для хранения общих свойств (поэтому каждый дочерний элемент содержит «базовое» свойство, которое является общим классом).Импортированный XSD создает:

Код: Выделить всё

public class Vehicle {
string make;
string model;
}

public class Car extends Vehicle {
integer doors;
}

public class Truck extends Vehicle {
integer weight
}
Есть ли способ заставить класс Car сериализоваться в json со свойствами суперкласса Vehicle, завернутыми как:

Код: Выделить всё

{
"base": {"make":"Ford", "model":"Ka"},
"doors": 2
}
Т.е. как если бы класс Car был определен как:

Код: Выделить всё

public class Car {
Vehicle base;
integer doors;
}
Я получаю большую (и развивающуюся) объектную модель, но относительно мало базовых классов, поэтому я мог бы аннотировать или писать собственные сериализаторы для базовых классов, но это было бы неосуществимо менять каждый дочерний класс.

Подробнее здесь: https://stackoverflow.com/questions/788 ... ild-object
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»