#java #xml #jaxb
#java #xml #jaxb
Вопрос:
Если у меня есть объект, содержащий несколько полей, представляющих собой списки других объектов, и я хочу сгенерировать XML для представления этого объекта, я получаю что-то вроде этого
<top level object>
<object1 />
<object1 />
<object1 />
<object2 />
<object2 />
<object3 />
</top level object>
и я хочу сгенерировать что-то вроде этого:
<top level object>
<object1 list>
<object1 />
<object1 />
<object1 />
</object1 list>
<object2 list>
<object2 />
<object2 />
</object2 list>
<object3 />
</top level object>
Возможно ли это путем изменения моих аннотаций? Прямо сейчас у меня есть мой объект класса верхнего уровня, помеченный
@XmlRootElement()
и каждый из методов получения Object1, Object2 … etc (который возвращает список < Object#> ) имеет
@XmlElement()
аннотация.
Надеюсь, есть способ изменить мой вывод, изменив аннотации, потому что мне кажется глупым создавать объект «Object1List» для простого хранения средства получения для других списков, чтобы все работало так, как я представляю в своей голове
Спасибо!
Ответ №1:
Взгляните на XmlElementWrapper
на java.net или в Java 6 API. Я думаю, что это именно то, что вам нужно.
Комментарии:
1. Именно так и было. Спасибо! Я попытался найти список аннотаций hte, и, думаю, я пропустил это или, по крайней мере, пропустил, как его использовать
2. @Дерек. Это происходит постоянно. Я думаю, что большая ценность StackOverflow заключается в том, что он дает вам доступ к тем мелким деталям, которые застряли в головах других людей 😉