Автор: Javabegin Название: Веб сервисы SOAP и RESTful (2019)
Как использовать и предоставлять веб сервисы с помощью SOAP и RESTful, формата данных JSON, XML, БД MySQL. Обновлен: март 2019 г.
Зачем вам нужны веб сервисы?
КОММУНИКАЦИИ
Веб сервисы позволяют 'подружить' между собой любые приложения и платформы. Вы можете выставить наружу любой функционал вашего приложения.
ГОТОВЫЕ РЕШЕНИЯ
Можно пользоваться уже готовыми сервисами, чтобы не изобретать колесо. Например, сервис по оплате с помощью карточек, получение курса валют и т.д.
МУЛЬТИПЛАТФОРМЕННОСТЬ
Вы можете создавать и вызывать веб сервисы на любом языке. К примеру, создать сервис на Java и обращаться к нему из Android приложения.
На веб сервисах сегодня построены почти все коммуникации между системами, поэтому их знания обязательны для любого профессионального программиста!
Вы можете построить свой функционал на основе любых сервисов больших компаний. Это позволит вам расширить функционал вашего приложения за счет сторонних служб.
Вы можете искать товары, проверять текст на ошибки, составлять маршруты на картах, оплачивать покупки и т.д.
Доступных сервисов - огромное количество, есть из чего выбрать.
Все, что нужно будет сделать - это прочитать нужную документацию и получить интерфейсы и библиотеки.
После этого вы можете встраивать в свой бизнес процесс любой функционал и добавлять к нему уникальный дизайн.
Вам не нужно изобретать велосипед, если есть уже готовый сервис для вашей цели. Просто подключите его в свое приложение и используйте!
Очень актуален такой подход для мобильных приложений, которые не могут позволить себе производить тяжелые вычисления, и им приходится использовать веб службы через интернет.
Прогноз погоды, курсы валют, просмотр афишы, чтение новостей, бэкап приложения и т.д. - везде используются веб службы.
Свежий пример: недавно мы организовали сервисы для нашей онлайн библиотеки (проект из другого тренинга).
Теперь книги можно искать и читать из любого приложения (C#, PHP и пр.), также с мобильных устройств (Android, iPhone).
Мы создали единый интерфейс и разрешили выполнять к нему внешние вызовы (на основе SOAP или REST).
Можно установить это приложение на хостинг и предоставить службы в интернете.
Что вы получите?
В этом курсе вы научитесь всему, что нужно знать про веб сервисы на Java:
как использовать спецификации JAX-WS и JAX-RS
как использовать REST и SOAP сервисы
как безопасно передавать данные
как сжимать данные
как создавать клиентов
как расширять свое приложение
и многое другое ...
В своих курсах мы строго придерживаемся принципа 'больше ПРАКТИКИ, меньше ВОДЫ'.
Информация должна быть применена сразу же после получения. В этом видеокурсе как обычно соотношение теории и практики: 20 на 80
В данный момент чаще всего используется 2 типа веб-сервисов:
SOAP
RESTful
Эти 2 технологии различаются способами взаимодействия и сложностью программирования. Вы должно уметь пользоваться обоими технологиями, а не только какой-то одной, чтобы предоставлять максимальные возможности для работы с вашим приложением.
Они могут использоваться совместно. В лучшем варианте - ваше приложение должно предоставлять оба интерфейса.
Концепция веб-сервисов сама по себе не сложная. Сложности будут, когда начнете изучение различных спецификаций.
Их очень много и легко запутаться.
Как показывает практика: для начала нужно просто уметь программировать в стиле ООП.
Остальному мы вас научим.
REST
Создание и вызов RESTful сервисов, основные моменты, отличия от стандартного SOAP сервиса, плюсы и минусы.
XML
Популярный формат передачи данных в SOAP сервисах, позволяет передавать любые массивы данных.
SAX, DOM
Парсеры для XML файлов. Вы научитесь разбирать документы и данные, которые будете получать от сервисов.
JSON
Самый популярный формат передачи данных в RESTful сервисах, потихоньку заменяет XML при обмене данными
WS-*
Набор спецификаций для работы с различными направлениями веб сервисов. Постоянно обновляются и дорабатываются консорциумами.
SOAP
Один из первых и популярных протоколов при работе с веб сервисами. Является надстройкой над HTTP и имеет очень большие возможности
MTOM
Механизм сжатия данных например при передаче больших двоичных файлов. Проводит оптимизацию и разбиение сообщения на части
XML Schema
Какие схемы нужно подключать и что это такое. Активно используются в веб сервисах, поэтому их понимание - обязательно для программиста
Endpoint
Как создать свою точку веб сервиса и использовать ее для получения уведомлений при вызовые веб сервиса.
JAXB
Технология по связыванию Java кода и XML тегов. Очень удобен в применении, делает всю рутину за вас.
BASE-64
Формат кодирования двоичных данных, который часто используется например в почтовых программах
XML Namespaces
Пространства имен используются в файлах настройки веб сервисов для разделения областей имен
JAX-WS
Спецификация для работы с SOAP веб сервисами. Имеет большое количество возможностей.
SAAJ
Инструмент для работы с SOAP сообщениями. Очень часто используется для упаковки или разбора данных.
JAX-RPC
Технология, которая предшествовала JAX-WS. Обычно используется в старых проектах, где нужна его поддержка.
WSDL
Формат описание веб сервисов, который полностью описывает интерфейс и возможности сервиса.
JAXP
Более современный инструмент для ручного разбора XML файлов. Отличается от SAX и DOM возможностями и удобством
JAX-RS
Спецификация для работы с веб сервисами RESTful. Описывает основные возможности и интерфейсы для использования
Аннотации
Служебная информация, которая описывается в классах и дает бОльшую гибкость при создании и вызове веб сервисов как SOAP, так и RESTful
Передача файлов
Как можно передавать двоичные данные с помощью веб сервисов, применяя различные сжатия и алгоритмы оптимизации
WS-Policy
Спецификация для описания политик сервисов. Применение политик к вашей веб службе.
W3C
Консорциум по созданию многих спецификаций, связанных с веб сервисами и другими веб технологиями.
MySQL
База данных, которую вы будете использовать при разработке проекта и веб сервисов. Предоставляет готовые драйвера JDBC.
Асинхронность
Как можно вызывать веб сервисы асинхронно, т.е. продолжать работу не дожидаясь ответа и не загружая интерфейс
Спецификации
Это все - определения и спецификации, которые вы научитесь использовать в работе.
Например, WS-Security - для обеспечения безопасности передаваемого сообщения, JSON - для формирования сообщения, JAX-RS - для работы с RESTful сервисами. И так далее.
Вы разработаете веб сервисы и будете обращаться к ним из разных приложений. Узнаете что такое на самом деле кодировка и почему она так важна для программиста.
Почти у всех новичков возникают проблемы с русскими символами при передаче данных, получении и пр. - поэтому данная тема очень важна.
Зачем нужен JSON и почему он набирает популярность. Чем он отличается от XML и как используется в веб сервисах. Как обрабатывать и отправлять JSON запросы.
Также научитесь обращаться к существующим службам крупных компаний для расширения своего приложения.
Вы разработаете приложение на тему поиска авиабилетов (небольшой бизнес-процесс). У приложения будет веб интерфейс + свои сервисы (двух типов: SOAP и RESTful).
Эти сервисы мы будем учиться вызывать десктоп приложения.
Java (NetBeans, GlassFish) - сервисы вы будете создавать на Java и опубликовывать их с помощью GlassFish. Также создадите клиента на Java для проверки работы.
Подробнее:
Для просмотра содержимого вам необходимо .
Скачать:
Вариант 1: Электронная доставка на email
После оплаты заказа на сайте, вам приходит ссылка на курс/тренинг/материалы на почту указанную в заказе.
Некоторые объекты, размещенные на сайте, являются интеллектуальной собственностью компании "Все онлайн курсы и тренинги vsekursi24.ru". Использование таких объектов установлено действующим законодательством РФ.
На сайте "Все онлайн курсы и тренинги vsekursi24.ru" имеются ссылки, позволяющие перейти на другие сайты. Компания "Все онлайн курсы и тренинги vsekursi24.ru" не несет ответственности за сведения, публикуемые на этих сайтах и предоставляет ссылки на них только в целях обеспечения удобства для посетителей своего сайта.
Личные сведения и безопасность
Компания "Все онлайн курсы и тренинги vsekursi24.ru" гарантирует, что никакая полученная от Вас информация никогда и ни при каких условиях не будет предоставлена третьим лицам, за исключением случаев, предусмотренных действующим законодательством Российской Федерации.
В определенных обстоятельствах компания "Все онлайн курсы и тренинги vsekursi24.ru" может попросить Вас зарегистрироваться и предоставить личные сведения. Предоставленная информация используется исключительно в служебных целях, а также для предоставления доступа к специальной информации.
Личные сведения можно изменить, обновить или удалить в любое время в разделе "Аккаунт" > "Профиль".
Чтобы обеспечить Вас информацией определенного рода, компания "Все онлайн курсы и тренинги vsekursi24.ru" с Вашего явного согласия может присылать на указанный при регистрации адрес электронный почты информационные сообщения. В любой момент Вы можете изменить тематику такой рассылки или отказаться от нее.
Как и многие другие сайты, "Все онлайн курсы и тренинги vsekursi24.ru" использует технологию cookie, которая может быть использована для продвижения нашего продукта и измерения эффективности рекламы. Кроме того, с помощь этой технологии "Все онлайн курсы и тренинги vsekursi24.ru" настраивается на работу лично с Вами. В частности без этой технологии невозможна работа с авторизацией в панели управления.
Сведения на данном сайте имеют чисто информативный характер, в них могут быть внесены любые изменения без какого-либо предварительного уведомления.
Чтобы отказаться от дальнейших коммуникаций с нашей компанией, изменить или удалить свою личную информацию, напишите нам через форму обратной связи