Перейти к основному содержимому

348 записей с тегом "Spring+"

Посмотреть все теги

· 6 мин. чтения

1. Обзор

Spring Mobile — это современное расширение популярной среды Spring Web MVC , которое помогает упростить разработку веб-приложений, которые должны быть полностью или частично совместимы с платформами для разных устройств, с минимальными усилиями и меньшим количеством шаблонного кода.

В этой статье мы узнаем о проекте Spring Mobile и создадим пример проекта, чтобы показать использование Spring Mobile.

2. Возможности Spring Mobile

  • Автоматическое обнаружение устройств: Spring Mobile имеет встроенный уровень абстракции преобразователя устройств на стороне сервера. Это анализирует все входящие запросы и обнаруживает информацию об устройстве отправителя, например, тип устройства, операционная система и т. д.
  • Управление настройками сайта: Используя Управление настройками сайта, Spring Mobile позволяет пользователям выбирать мобильный/планшет/обычный вид веб-сайта. Это относительно устаревший метод, поскольку с помощью DeviceDelegatingViewresolver мы можем сохранять уровень представления в зависимости от типа устройства, не требуя ввода данных со стороны пользователя.
  • Site Switcher : Site Switcher может автоматически переключать пользователей на наиболее подходящий вид в соответствии с типом его/ее устройства (например, мобильное, настольное и т. д.).
  • Device Aware View Manager : обычно, в зависимости от типа устройства, мы перенаправляем запрос пользователя на определенный сайт, предназначенный для обработки определенного устройства. Диспетчер представлений Spring Mobile позволяет разработчику гибко помещать все представления в предопределенный формат, а Spring Mobile будет автоматически управлять различными представлениями в зависимости от типа устройства.

· 8 мин. чтения

1. Обзор

Spring REST Docs создает документацию для служб RESTful, которая является точной и удобочитаемой. Он сочетает в себе рукописную документацию с автоматически сгенерированными фрагментами документов, созданными с помощью тестов Spring.

2. Преимущества

Одной из основных философий проекта является использование тестов для создания документации. Это гарантирует, что всегда создаваемая документация точно соответствует фактическому поведению API. Кроме того, выходные данные готовы для обработки Asciidoctor , цепочкой инструментов публикации, основанной на синтаксисе AsciiDoc. Это тот же инструмент, который используется для создания документации Spring Framework.

Эти подходы уменьшают ограничения, налагаемые другими фреймворками. Spring REST Docs создает точную, краткую и хорошо структурированную документацию. Затем эта документация позволяет потребителям веб-сервисов получать необходимую им информацию с минимальными усилиями.

· 6 мин. чтения

1. Обзор

В этом руководстве мы обсудим, что такое HAL и почему он полезен, прежде чем представить браузер HAL .

Затем мы воспользуемся Spring для создания простого REST API с несколькими интересными конечными точками и заполним нашу базу данных тестовыми данными.

Наконец, используя браузер HAL, мы изучим наш REST API и узнаем, как перемещаться по содержащимся в нем данным.

2. HAL и браузер HAL

· 11 мин. чтения

1. Обзор

В настоящее время внешние и внутренние компоненты часто разделяют веб-приложение. Обычно мы предоставляем API в качестве внутреннего компонента для внешнего компонента или интеграции сторонних приложений.

В таком сценарии важно иметь правильные спецификации для серверных API. В то же время документация по API должна быть информативной, читабельной и простой для понимания.

Более того, справочная документация должна одновременно описывать каждое изменение в API. Выполнять это вручную — утомительное занятие, поэтому автоматизация процесса была неизбежна.

В этом руководстве мы рассмотрим Swagger 2 для веб-службы Spring REST , используя реализацию Springfox спецификации Swagger 2. Важно отметить, что последняя версия спецификации Swagger, теперь известная как OpenAPI 3.0, лучше поддерживается проектом Springdoc и должна использоваться для документирования Spring REST API .

Если вы не знакомы со Swagger, посетите его веб-страницу , чтобы узнать больше, прежде чем продолжить работу с этим руководством.

· 5 мин. чтения

1. Обзор

В этой статье мы создадим простое веб-приложение, реализующее обмен сообщениями с использованием новых возможностей WebSocket, представленных в Spring Framework 4.0.

WebSockets — это двунаправленное , полнодуплексное , постоянное соединение между веб-браузером и сервером. Как только соединение WebSocket установлено, соединение остается открытым до тех пор, пока клиент или сервер не решит закрыть это соединение.

Типичным вариантом использования может быть ситуация, когда в приложении несколько пользователей общаются друг с другом, например, в чате. В нашем примере мы создадим простой чат-клиент.

2. Зависимости Maven

· 3 мин. чтения

1. Обзор

Файлы свойств — это распространенный метод, который мы можем использовать для хранения информации, относящейся к проекту. В идеале мы должны оставить его внешним по отношению к упаковке, чтобы иметь возможность вносить изменения в конфигурацию по мере необходимости.

В этом кратком руководстве мы рассмотрим различные способы загрузки файла свойств из места за пределами jar в приложении Spring Boot .

2. Использование местоположения по умолчанию

По соглашению Spring Boot ищет внешний файл конфигурации — application . properties или application.yml — в четырех предопределенных местах в следующем порядке приоритета:

· 15 мин. чтения

1. Введение

В этом руководстве мы рассмотрим параллелизм в реактивных программах, написанных с помощью Spring WebFlux .

Мы начнем с обсуждения параллелизма в отношении реактивного программирования. После этого мы рассмотрим, как Spring WebFlux предлагает абстракции параллелизма для различных библиотек реактивного сервера.

2. Мотивация реактивного программирования

Типичное веб-приложение состоит из нескольких сложных взаимодействующих частей . Многие из этих взаимодействий носят блокирующий характер , например те, которые связаны с обращением к базе данных для выборки или обновления данных. Однако несколько других являются независимыми и могут выполняться одновременно, возможно, параллельно.

· 8 мин. чтения

1. Введение

Micrometer обеспечивает простую видимость поверх клиентов измерительных приборов для ряда популярных систем мониторинга. В настоящее время он поддерживает следующие системы мониторинга: Atlas, Datadog, Graphite, Ganglia, Influx, JMX и Prometheus.

В этом руководстве мы познакомим вас с базовым использованием Micrometer и его интеграцией со Spring.

Для простоты мы возьмем Micrometer Atlas в качестве примера, чтобы продемонстрировать большинство наших вариантов использования.

2. Зависимость от Maven

· 5 мин. чтения

1. Обзор

Проще говоря, Activiti — это платформа управления рабочими процессами и бизнес-процессами.

Мы можем быстро приступить к работе, создав ProcessEngineConfiguration (обычно на основе файла конфигурации). Отсюда мы можем получить ProcessEngine , а через ProcessEngine мы можем выполнять рабочие процессы и операции BPM.

API предоставляет различные службы, которые можно использовать для доступа к процессам и управления ими. Эти сервисы могут предоставить нам информацию об истории процессов, о том, что запущено в данный момент, и о процессах, которые развернуты, но еще не запущены.

Службы также можно использовать для определения структуры процесса и управления состоянием процесса, т. е. запуска, приостановки, отмены и т. д.

Если вы не знакомы с API, ознакомьтесь с нашим Введением в API Activiti с Java . В этой статье мы обсудим, как настроить Activiti API в приложении Spring Boot.

· 4 мин. чтения

1. Введение

В этом руководстве мы познакомимся с АОП (аспектно-ориентированным программированием) с помощью Spring и узнаем, как мы можем использовать этот мощный инструмент в практических сценариях.

Также можно использовать аннотации AspectJ при разработке с помощью Spring AOP, но в этой статье мы сосредоточимся на базовой конфигурации Spring AOP на основе XML.

2. Обзор

АОП — это парадигма программирования, направленная на увеличение модульности за счет разделения сквозных задач. Он делает это, добавляя дополнительное поведение к существующему коду, не изменяя сам код.