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

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

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

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

1. Обзор

Spring Framework поставляется с двумя контейнерами IOC — BeanFactory и ApplicationContext . BeanFactory — это самая базовая версия контейнеров IOC, а ApplicationContext расширяет возможности BeanFactory .

В этом кратком руководстве мы поймем существенные различия между этими двумя контейнерами IOC на практических примерах.

2. Ленивая загрузка против нетерпеливой загрузки

BeanFactory загружает компоненты по запросу, а ApplicationContext загружает все компоненты при запуске . Таким образом, BeanFactory легче по сравнению с ApplicationContext . Давайте разберемся на примере.

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

1. Введение

Мы используем Spring Batch для составления заданий из нескольких шагов, которые считывают, преобразуют и записывают данные. Если шаги в задании имеют несколько путей, подобно использованию оператора if в нашем коде, мы говорим, что поток задания является условным .

В этом руководстве мы рассмотрим два способа создания заданий Spring Batch с условным потоком.

2. Выйти из статуса и статуса партии

Когда мы указываем условный шаг в пакетной среде Spring, мы используем статус выхода шага или задания. Поэтому нам нужно понимать разницу между статусом партии и статусом выхода в наших шагах и заданиях:

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

1. Обзор

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

2. Кэширование

Spring применяет кэширование к методам, чтобы наше приложение не выполняло один и тот же метод несколько раз для одного и того же ввода.

Реализовать кэширование в приложении Spring очень просто . Это можно сделать, добавив аннотацию @EnableCaching в наш класс конфигурации:

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

1. Введение

Шаблоны проектирования являются неотъемлемой частью разработки программного обеспечения. Эти решения не только решают повторяющиеся проблемы, но и помогают разработчикам понять структуру фреймворка, распознавая общие шаблоны.

В этом руководстве мы рассмотрим четыре наиболее распространенных шаблона проектирования, используемых в Spring Framework:

  1. Одноэлементный шаблон
  2. Шаблон фабричного метода
  3. Шаблон прокси
  4. Шаблон шаблона

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

2. Одноэлементный шаблон

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

1. Обзор

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

В этом кратком руководстве мы рассмотрим ShedLock — библиотеку Java, которая гарантирует, что наши запланированные задачи запускаются только один раз в одно и то же время , и является альтернативой Quartz .

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

Чтобы использовать ShedLock с Spring, нам нужно добавить зависимость shedlock- spring : [ ](https://search.maven.org/search?q=g:net.javacrumbs.shedlock%20AND%20a:shedlock-spring&core=gav)

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

1. Обзор

В этой статье основное внимание будет уделено тестированию службы REST с несколькими типами/представлениями мультимедиа.

Мы напишем интеграционные тесты, способные переключаться между несколькими типами представлений, поддерживаемыми API. Цель состоит в том, чтобы иметь возможность запускать один и тот же тест, используя те же самые URI службы, просто запрашивая другой тип носителя.

2. Цели

Любой REST API должен предоставлять свои ресурсы как представления с использованием одного или нескольких типов мультимедиа. Клиент установит заголовок Accept , чтобы выбрать тип представления, который он запрашивает у службы.

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

1. Обзор

В этом руководстве мы рассмотрим обмен сообщениями через AMQP с использованием платформы Spring AMQP. Сначала мы рассмотрим некоторые ключевые концепции обмена сообщениями. Затем мы перейдем к практическому примеру.

2. Коммуникация на основе сообщений ``

Обмен сообщениями — это метод обмена данными между приложениями. Он основан на асинхронной передаче сообщений вместо архитектуры, основанной на синхронном запросе и ответе. Производители и потребители сообщений разделены промежуточным уровнем обмена сообщениями, известным как брокер сообщений . Брокер сообщений предоставляет такие функции, как постоянное хранение сообщений, фильтрация сообщений и преобразование сообщений.

В случае обмена сообщениями между приложениями, написанными на Java, обычно используется API JMS (Java Message Service). Для обеспечения взаимодействия между различными поставщиками и платформами мы не сможем использовать клиенты и брокеры JMS. Вот где AMQP пригодится .

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

1. Введение

Иногда нам нужно подключиться к нескольким технологиям баз данных в одном приложении.

В этом руководстве мы рассмотрим различные варианты конфигурации, когда речь идет об использовании нескольких модулей Spring Data в одном приложении .

Давайте воспользуемся игрушечным книжным магазином Spring Boot, чтобы изучить эту тему.

2. Требуемые зависимости

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

1. Введение

HTTP (протокол передачи гипертекста) — это протокол запроса-ответа без сохранения состояния. Его простой дизайн делает его очень масштабируемым, но неподходящим и неэффективным для высокоинтерактивных веб-приложений в реальном времени из-за объема служебных данных, которые необходимо передавать вместе с каждым запросом/ответом.

Поскольку HTTP является синхронным, а приложения реального времени должны быть асинхронными, любые решения, такие как опрос или длительный опрос ( Comet ), как правило, сложны и неэффективны.

Чтобы решить указанную выше проблему, нам нужен основанный на стандартах, двунаправленный и полнодуплексный протокол, который мог бы использоваться как серверами, так и клиентами, и это привело к введению API JSR 356 — в этой статье мы покажу пример его использования.

2. Настройка

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

1. Введение

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

Хотя использование очереди недоставленных сообщений является стандартным способом обработки ошибочных сообщений , мы можем захотеть повторить попытку использования сообщений и вернуть систему в нормальное состояние.

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

2. Предпосылки