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

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

1. Обзор

В этом кратком руководстве мы обсудим новый класс ResponseStatusException , представленный в Spring 5. Этот класс поддерживает применение кодов состояния HTTP к ответам HTTP.

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

2. Статус ответа

Прежде чем мы углубимся в ResponseStatusException, давайте быстро взглянем на аннотацию @ResponseStatus . Эта аннотация была введена в Spring 3 для применения кода состояния HTTP к ответу HTTP .

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

1. Обзор

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

Хорошим вариантом использования пользовательского типа мультимедиа является управление версиями API.

2. API — версия 1

Давайте начнем с простого примера — API, предоставляющий один ресурс по идентификатору.

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

1. Введение

В этом кратком руководстве мы рассмотрим, как отправлять HTTP-запросы, содержащие сжатые данные.

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

2. Отправка сжатых запросов

Во-первых, давайте создадим метод, который сжимает массив байтов. Это пригодится в ближайшее время:

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

1. Обзор

В этом руководстве мы узнаем, как реализовать эффективную регистрацию запросов/ответов RestTemplate . Это особенно полезно для отладки обмена между двумя серверами.

К сожалению, Spring Boot не предоставляет простого способа проверить или зарегистрировать простое тело ответа JSON.

Мы собираемся изучить несколько методов регистрации либо заголовков HTTP, либо, что наиболее интересно, тела HTTP.

Примечание . Spring RestTemplate будет устаревшим и будет заменен WebClient . Вы можете найти аналогичную статью с использованием WebClient здесь: Logging Spring WebClient Calls .

2. Базовое ведение журнала с помощью RestTemplate

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

1. Введение

В этом руководстве мы увидим, как объявлять даты в файле OpenAPI, в данном случае реализованном с помощью Swagger . Это позволит нам стандартизированно управлять датами ввода и вывода при вызове внешних API.

2. Чванство против ОАГ

Swagger — это набор инструментов, реализующих спецификацию OpenAPI (OAS), независимый от языка интерфейс для документирования RESTful API. Это позволяет нам понять возможности любого сервиса без доступа к исходному коду.

Для реализации этого в нашем проекте будет файл, обычно YAML или JSON , описывающий API с использованием OAS. Затем мы будем использовать инструменты Swagger для:

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

1. Обзор

В этом руководстве мы узнаем, как работать с объектами JSON в качестве параметров запроса с помощью OpenAPI .

2. Параметры запроса в OpenAPI 2

OpenAPI 2 не поддерживает объекты в качестве параметров запроса ; поддерживаются только примитивные значения и массивы примитивов.

Из-за этого мы вместо этого захотим определить наш параметр JSON как строку.

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

1. Обзор

В этом руководстве мы рассмотрим, как мы можем использовать класс DeferredResult в Spring MVC для выполнения асинхронной обработки запросов .

Асинхронная поддержка была введена в Servlet 3.0 и, проще говоря, позволяет обрабатывать HTTP-запрос в другом потоке, а не в потоке получателя запроса.

DeferredResult, доступный начиная с Spring 3.2, помогает перенести длительные вычисления из потока http-worker в отдельный поток.

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

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

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

1. Обзор

В этом кратком руководстве мы изучим несколько различных способов условного добавления классов CSS в Thymeleaf.

Если вы не знакомы с Thymeleaf, мы рекомендуем ознакомиться с нашим введением в него.

2. Использование th:if

Предположим, что наша цель — сгенерировать <span> , классы которого определяются сервером:

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

1. Введение

Среди различных доступных HTTP-методов метод HTTP PATCH играет уникальную роль. Это позволяет нам применять частичные обновления к ресурсам HTTP.

В этом руководстве мы рассмотрим, как использовать метод HTTP PATCH вместе с форматом документа JSON Patch для применения частичных обновлений к нашим ресурсам RESTful.

2. Вариант использования

Начнем с рассмотрения примера ресурса HTTP Customer , представленного документом JSON:

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

1. Введение

В этом кратком руководстве мы узнаем, как использовать CSS и JavaScript в наших шаблонах Thymeleaf .

Во-первых, мы рассмотрим ожидаемую структуру папок, чтобы знать, куда поместить наши файлы. После этого мы увидим, что нам нужно сделать, чтобы получить доступ к этим файлам из шаблона Thymeleaf.

Мы начнем с добавления стилей CSS на нашу страницу, а затем перейдем к добавлению некоторых функций JavaScript.

2. Настройка