Мне нужно отобразить следующий XML-объект, основанный на значении типа элемента. Суперкласс класса BaseEntity имеет общие элементы для классов Machine и Robot. В каждом подклассе есть разные элементы ... Структура XML исправлена, и я не могу ее изменить. Каждый элемент ввода должен быть сопоставлен с соответствующим классом, entry/type = Машина должна быть сопоставлена с подклассом Machine и т. Д.Подкласс JAXB Unmarshal, основанный на значении дочернего элемента
Возможно ли в JAXB? Как я могу это реализовать? Любое предложение?
<root>
<entries>
<entry>
<name>RTM</name>
<description>RealTime Machine</description>
<code>RTM1</code>
<type>Machine</type>
</entry>
<entry>
<name>RTM</name>
<description>RealTime Machine</description>
<type>Robot</type>
<serial>RS123<serial>
</entry>
</entries>
</root>
public abstract class BaseEntity {
private String name;
private String description;
}
public class Machine extends BaseEntity{
private String code;
}
public class Robot extends BaseEntity{
private String serial;
}
Если вам не все равно о производительности, отключите все дочерние классы и выберите один на основе значения 'type'. –
Да, я. Документ представляет собой схему диаграммы, которая может прибыть до 1000 записей, мне нужно загрузить его быстрее. Другое решение? – s0d