Слайд 2Приложение – локальная файловая система
![Приложение – локальная файловая система](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-1.jpg)
Слайд 3Работа с файловой системой
JSON Java Script Object Notation
XML Extensible Markup Language
![Работа с файловой системой JSON Java Script Object Notation XML Extensible Markup Language](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-2.jpg)
Слайд 5JSON
JSON - JavaScript Object Notation — текстовый формат обмена данными
![JSON JSON - JavaScript Object Notation — текстовый формат обмена данными](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-4.jpg)
Слайд 7JSON
Объект
Массив
Литералы
Ключ: значение
Строка
Число
![JSON Объект Массив Литералы Ключ: значение Строка Число](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-6.jpg)
Слайд 8JSON
Объект - неупорядоченное множество пар {ключ:значение}
Ключ - строка
Строка — это упорядоченное множество из нуля или более
![JSON Объект - неупорядоченное множество пар {ключ:значение} Ключ - строка Строка —](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-7.jpg)
символов юникода, заключенное в двойные кавычки
Число в десятичном формате
Пары ключ-значение отделяются запятыми
Массив - упорядоченное множество значений
Массив заключается в [квадратные скобки]
Значения в массиве разделяются запятыми
Литералы true, false и null
Слайд 11GSON
Основной класс – Gson
Основные методы – toJson и fromJson
![GSON Основной класс – Gson Основные методы – toJson и fromJson](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-10.jpg)
Слайд 13Работа с GSON – примитивные типы
![Работа с GSON – примитивные типы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-12.jpg)
Слайд 19GsonBuilder
GsonBuilder – разработка собственного сериализатора
![GsonBuilder GsonBuilder – разработка собственного сериализатора](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-18.jpg)
Слайд 23XML
Является подмножеством языка SGML – Standard Generalized Markup Language – метаязыка для
![XML Является подмножеством языка SGML – Standard Generalized Markup Language – метаязыка для определения языков разметки](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-22.jpg)
определения языков разметки
Слайд 24W3C – стандартизация
Консорциум Всемирной паутины - World Wide Web Consortium – организация, разрабатывающая
![W3C – стандартизация Консорциум Всемирной паутины - World Wide Web Consortium –](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-23.jpg)
и внедряющая технологические стандарты для web
Глава – Тимоти Джон Бернерс-Ли
Ок. 15 стандартов утверждены для XML:
XML Schema
XPath
XSLT
XQuery
Слайд 25XML Schema
XML Schema — язык описания структуры XML-документа – предназначен для определения правил,
![XML Schema XML Schema — язык описания структуры XML-документа – предназначен для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-24.jpg)
которым должен подчиняться документ
Создается модель данных документа, которая включает:
словарь (названия элементов и атрибутов);
модель содержания (отношения между элементами и атрибутами и их структура);
типы данных.
Файл, содержащий XML Schema, обычно имеет расширение .xsd
Слайд 26XPath
XPath - XML Path Language — язык запросов к элементам XML-документа.
Разработан для организации доступа
![XPath XPath - XML Path Language — язык запросов к элементам XML-документа.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-25.jpg)
к частям документа XML в файлах трансформации XSLT
Слайд 27XSLT
XSLT — eXtensible Stylesheet Language Transformations — язык преобразования XML-документов
Правила выбора и
![XSLT XSLT — eXtensible Stylesheet Language Transformations — язык преобразования XML-документов Правила](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-26.jpg)
преобразования данных пишутся на языке запросов XPath
Слайд 28XQuery
XQuery — язык запросов, разработанный для обработки данных в формате XML
![XQuery XQuery — язык запросов, разработанный для обработки данных в формате XML](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-27.jpg)
Слайд 29XML-языки – OASIS
OASIS — Organization for the Advancement of Structured Information Standards
![XML-языки – OASIS OASIS — Organization for the Advancement of Structured Information](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-28.jpg)
— глобальный консорциум
Управляет разработкой и принятием промышленных стандартов электронной коммерции
Слайд 30XML
Правильно построенный документ – well-formed – соответствует синтаксическим правилам XML
Валидный документ –
![XML Правильно построенный документ – well-formed – соответствует синтаксическим правилам XML Валидный](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-29.jpg)
valid – соответствует правилам описания типа документа
Слайд 31Синтаксические правила XML
Наличие корневого элемента;
Каждый открывающий тег имеет соответствующий закрывающий тег;
Правильное вложение
![Синтаксические правила XML Наличие корневого элемента; Каждый открывающий тег имеет соответствующий закрывающий](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-30.jpg)
элементов документа;
Атрибут должен иметь значение, которое берется в кавычки
Древовидная структура документа
Слайд 33DocumentBuilder
DocumentBuilderFactory - DocumentBuilder
TransformerFactory – Transformer - TransformerException
![DocumentBuilder DocumentBuilderFactory - DocumentBuilder TransformerFactory – Transformer - TransformerException](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-32.jpg)
Слайд 41Запрос данных XPath
для доступа к элементам и атрибутам XML-документа
• Дочерние элементы узла
![Запрос данных XPath для доступа к элементам и атрибутам XML-документа • Дочерние](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1061692/slide-40.jpg)
/customer/*
• Все атрибуты узла /customer/!?*
• Чтобы вернуть только покупателей из региона Dallas /customer[@region = " Dallas "]