Сериализация в XML - Serialization #2 - Advanced Java

Поділитися
Вставка
  • Опубліковано 29 вер 2024
  • Сохранение и восстановление Java объектов в/из XML с помощью JAXB.
    Данный урок знакомит с технологией маршаллинга и демаршаллинга Java объектов в/из XML. Java Architecture for XML Binding (JAXB) позволяет с помощью аннотаций указать то, каким образом объекты будут представляться в XML, а потом, вызвав пару методов, сохранить или восстановить их в/из XML. В данном уроке не рассматриваются все аспекты применения технологии JAXB - это только знакомство. Но полученных знаний будет достаточно, чтобы быстро написать программу по отображению Java объектов в XML и обратно.
    Практика по работе с XML:
    • XML - Занятие 8 - Java...
    Базовая теория по потокам ввода/вывода в Java:
    • Урок 11 - Annotations,...
    Мини-курс "Advanced Java -- Serialization" представляет различные популярные техники для сериализации объектов в Java. Рассматривается базовая сериализация с применением встроенных инструментов, объясняются тонкости ее настройки и использования. Кроме того, мини-курс знакомит со ставшей уже встроенной сериализацией в XML с применением JAXB, а также с сериализацей в формат JSON с помощью библиотеки от Google.
    Все видео курса "Advanced Java - Serialization":
    • Advanced Java - Serial...
    Общая информация о курсах Advanced Java:
    yuriytkach.blog...
    Подписаться на канал:
    www.youtube.com...
    Канал "Yuriy Tkach" - Уроки по программированию на Java: / ytkach

КОМЕНТАРІ • 9

  • @arturdenisenko1433
    @arturdenisenko1433 8 років тому +1

    Спасибо за хороший урок

  • @RedOverlord2017
    @RedOverlord2017 6 років тому +5

    JAXB стало Deprecated в Java 9, в Java 10 вообще уберут. Как тогда сериализовать объекты в XML?

  • @musicalsurprisebox
    @musicalsurprisebox 7 років тому +2

    Юрец - красава!

  • @РоманИванов-ъ2з

    Сразу после сериализацию тяжеловато, необходимо наверное сначала углубиться в XML и пр

  • @tetidemalaga
    @tetidemalaga 4 роки тому

    Супер! Все четко и ясно. Спасибо.

  • @ЕвгенийВовк-ы7ь
    @ЕвгенийВовк-ы7ь 2 роки тому

    Спасибо!

  • @SergeyKobec
    @SergeyKobec 10 років тому

    В методе umarshal(), при приведении к DataObject (пример кода на 17:36), словил ClassCastException, получилось сделать приведением к JAXBElement сам DataObject достал через getValue() от него. Пример в видео должен работать :)? или это ошибка для самостоятельного ковыряния?

    • @java-tkach
      @java-tkach  10 років тому +4

      Добрый день.
      Пример в видео работает. Но так как Вы сами пишете свой код, то могут быть нюансы. Конкретно в Ваше случае следующее:
      JAXB возвращает JAXBElement, а не объект в том случае, если он не может уникально идентифицировать класс по имени рутовкого тега в XML. Это может возникать, например, если вы забыли поставить аннотацию@XMLRootElement.Также у Вас могут быть два класса DataObject, лежащие в разных пакетах.
      Дополнительная информация на stackoverflow:
      - stackoverflow.com/questions/707084/class-cast-exception-when-trying-to-unmarshall-xml?lq=1
      - stackoverflow.com/questions/10243679/when-does-jaxb-unmarshaller-unmarshal-returns-a-jaxbelementmyschemaobject-or-a