Статьи Утилиты Telegram YouTube VK Видео RuTube Отзывы

Статьи с тэгом «json»

Обновление записи через PUT-запрос в Spring Boot

9 марта 2026

Тэги: Java, SQL, rest, Spring Boot, руководство, json.

В предыдущей статье мы научились создавать новые записи в БД. Теперь попробуем создать полноценный rest-интерфейс для обновления ранее добавленных записей.
Читать полностью...

Добавление записи через POST-запрос в Spring Boot

8 марта 2026

Тэги: Spring Boot, rest, SQL, Java, руководство, maven, json.

Создадим полноценный rest-интерфейс для добавления новых записей, их модификации и удаления. Приложение состоит из трёх слоёв: работа с БД (repository), бизнес-логика приложения (service) и сам rest-интерфейс (controller), который обрабатывает входящий json и генерирует исходящий.
Читать полностью...

Spring Boot Restful Service

8 марта 2026

Тэги: maven, rest, Spring Boot, Java, руководство, json.

Простой сервис на Spring Boot, который при выполнении get-запроса будет возвращать профиль пользователя в формате json в зависимости от id, который передаётся в запросе. При возникновении исключительных ситуаций (например, профиль не найден), пользователь получит соответствующий ответ.
Читать полностью...

Версионирование REST API в Spring

26 февраля 2026

Тэги: Java, Spring Boot, rest, json, yaml.

По мере развития вашего приложения REST API может претерпевать значительные изменения. И при каждом изменении требуется сохранять обратную совместимость. Тут нам на помощь придёт версионирование эндпоинтов, которое появилось в Spring Boot 4.
Читать полностью...

Работа с json в PostgreSQL

30 июля 2025

Тэги: SQL, json, PostgreSQL.

JSON (JavaScript Object Notation) является форматом для хранения и передачи данных в форме объектов, массивов и других значений, которые можно легко преобразовать в текстовую строку. PostgreSQL поддерживает хранение данных в формате JSON, а также множество функций для обработки и анализа JSON-данных.

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

Читать полностью...

Spring Data Rest

2 февраля 2025

Тэги: Hibernate, Spring, Spring Boot, rest, SQL, gradle, Spring Data, Kotlin, json, yaml, YouTube, руководство, H2.

Ранее я уже приводил пример в статье CrudRepository на Kotlin, как Spring Data позволяет легко выполнять основные операции над сущностями в БД. Теперь пойдём ещё дальше и рассмотрим как Spring Data Rest позволяет избежать написания контроллеров и сервисной логики. Поскольку писать будем на Kotlin, нам придётся учитывать специфику взаимодействия с Java-кодом, на который изначально был рассчитан Spring Data Rest.

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

Исходники тестового проекта, адаптированного под Spring Boot 3, доступны на github.

Подключаем Spring Data Rest

Для начала создадим заготовку проекта. Проще всего это сделать с помощью Spring Initializr. В настройках выбираем в качестве языка Kotlin и в качестве сборщика Gradle – Kotlin. В dependency нам нужно последовательно добавить три зависимости: Spring Data JPA, Rest Repositories и H2 Database. H2 – это СУБД, которая работает в оперативной памяти и не требует установки. Однако при необходимости вы можете легко поменять настройки подключения и использовать другой драйвер, например, Postgres. При этом как-то править код приложения не потребуется.

Читать полностью...

Валидация бинов в Spring

23 января 2025

Тэги: Java, Spring, json, maven, rest.

Spring позволяет проверять входящие запросы в декларативном стиле при помощи специальных аннотаций из пакета jakarta.validation.

Создадим простой проект на Java и добавим в pom.xml следующие зависимости:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

Компонент spring-boot-starter-web добавляет базовый функционал по работе с rest-контроллерами, а spring-boot-starter-validation – сам механизм валидации.

Теперь создадим rest-контроллер для работы с пользователями. В нём есть метод, создающий нового пользователя. Согласно restful-соглашениям, это будет POST-запрос:

@RestController
@RequestMapping("/users")
public class UserController {

    @PostMapping
    public String createUser(@Valid @RequestBody CreateUserRequest request) {
        // создание пользователя в БД
        return "Пользователь создан успешно!";
    }
}

На вход метод принимает CreateUserRequest, который мы будем передавать в формате json. Этот параметр метода снабжён аннотациями @RequestBody (говорит, что параметры будут именно в теле запроса) и @Valid (аннотация, которая активирует механизм валидации для данного бина). Если не указать аннотацию @Valid, то валидация работать не будет!

Читать полностью...

CrudRepository на Kotlin

20 ноября 2024

Тэги: Spring Data, SQL, Kotlin, rest, gradle, json, Hibernate, H2.

Рассмотрим пример rest-сервиса, написанного на Kotlin и работающего с базой данных с помощью Spring Data JPA. Rest-сервис состоит из трёх слоёв: слой работы с БД, сервисный слой и контроллер. Мы пойдём последовательно по слоям, начиная с нижнего.

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

Заготовку проекта удобно сгенерить через Spring Initializr. Там достаточно выбрать тип проекта – Gradle – Kotlin, язык – Kotlin. В качестве dependency надо добавить Spring Web (функциональность rest-контроллеров), Spring Data JPA (работа с БД), Validation (валидация входящих rest-запросов) и драйвер вашей СУБД. Для удобства мы будем использовать H2, т.к. она автоматически создаётся в оперативной памяти и не требует никакой настройки. Но вы можете использовать любую другую СУБД. Достаточно подключить нужный драйвер в файле build.gradle.kts и прописать параметры подключения в файле application.yml.

Затем нажимаем Generate – и скачиваем архив с заготовкой проекта. В итоге файл build.gradle.kts в секции dependencies помимо стандартных должен содержать следующие зависимости:

Читать полностью...

Обработка ошибок в GraphQL

13 мая 2024

Тэги: Collections, Spring Boot, руководство, Kotlin, GraphQL, json.

Продолжаем цикл статей про работу с GraphQL в проекте, написанном на Kotlin и Spring Boot. В первой статье GraphQL в Spring Boot мы создали проект, который возвращает информацию о книгах и их авторах. Во второй части Мутации в GraphQL мы научились менять данные.

Обработка ошибок в Spring Boot Graphql

Теперь рассмотрим как можно обрабатывать ошибки в GraphQL и менять их формат.

Читать полностью...

Мутации в GraphQL

5 апреля 2024

Тэги: Collections, Spring Boot, GraphQL, Kotlin, json.

В прошлой статье GraphQL в Spring Boot мы создали приложение на Kotlin с API в формате GraphQL, в котором есть две сущности: Книга и Автор. Также научились расширять стандартный набор типов graphql и решили «проблему N+1» с помощью пакетной подгрузки дочерних сущностей. Исходники проекта доступны на github.

Теперь давайте рассмотрим как можно менять данные с помощью GraphQL.

Мутации

Для изменения данных в GraphQL используются так называемые «мутации». По сути это обычные методы со входными и выходными параметрами, доступные через протокол взаимодействия GraphQL.

Мутация – изменение данных в GraphQL
Читать полностью...

Далее ❯