Почему для преобразования объектов в JSON не требуется @XmlRootElement

#json #xml #jakarta-ee #jaxb

#json #xml #джакарта-ee #jaxb

Вопрос:

Я изучаю веб-сервисы RESTful с использованием Java (сервер Wildfly), во время видео преподаватель сказал, что JAXB преобразует объект в xml, а затем преобразует этот xml в JSON. Итак, чтобы иметь XML-документ, нам нужно аннотировать наш класс с @XmlRootElement помощью , но чтобы получить JSON, мы можем опустить @XmlRootElement . Итак, если под капотом JAXB преобразует документ в xml, чтобы получить josn, и мы можем опустить @XmlRootElement для json, зачем это требуется для XML-документов?

Комментарии:

1. Не могли бы вы предоставить ссылку на видео?

2. это видеоряд pluralsight, вызванный RESTFul Services in Java using Jersey в соответствии с 04. Using HTTP GET главой, видео под названием 10. JSON Output , вот скриншот: i.imgur.com/4wH8MWb.png

Ответ №1:

Это из-за менее структурированного формата JSON. Он использует тот же механизм синтаксического анализа, но ему все равно, правильно ли он сформирован или действителен.

Ответ №2:

Я думаю, вы немного перепутали, я думаю, JAXB не предназначен для преобразования XML в JSON. Вы можете использовать JAXB для маршалирования / отмены маршалирования в / из XML / JSON в объекты Java.