Пошаговое руководство Spring Boot: пошаговая инструкция с нуля

Подробное пошаговое руководство по созданию первого веб-приложения на Spring Boot с нуля: от настройки окружения и генерации проекта до написания REST контроллера, работы с данными и сборки исполняемого JAR-файла.
Создание современного веб-приложения с нуля может показаться сложной задачей, особенно для новичков в мире Java. Однако фреймворк Spring Boot кардинально меняет эту ситуацию, предлагая подход, основанный на конвенциях и автоматической конфигурации. Это руководство проведет вас через каждый этап создания, настройки и запуска вашего первого Spring Boot приложения.

Первый шаг — подготовка рабочего окружения. Вам понадобится установленная Java Development Kit (JDK) версии 8 или выше. Рекомендуется использовать LTS-версии, такие как 11, 17 или 21, для долгосрочной поддержки. Проверить установку можно командой `java -version` в терминале. Далее необходимо выбрать инструмент сборки. Spring Boot отлично работает с Maven и Gradle. Для простоты начнем с Maven. Убедитесь, что Maven установлен, выполнив `mvn -v`. В качестве среды разработки (IDE) идеально подойдут IntelliJ IDEA (Community Edition бесплатна) или Eclipse с установленным плагином Spring Tools.

Теперь перейдем к созданию проекта. Самый простой способ — использовать онлайн-инструмент Spring Initializr. Откройте в браузере сайт start.spring.io. Здесь вам нужно сделать несколько выборов. В качестве проекта укажите Maven Project, язык — Java, а версию Spring Boot выберите последнюю стабильную (например, 3.2.x). Заполните метаданные: Group (обычно доменное имя наоборот, например, com.example) и Artifact (название вашего приложения, например, myfirstapp). В разделе Dependencies добавьте необходимые стартеры. Для простого веб-приложения достаточно добавить ‘Spring Web’. Нажмите кнопку ‘Generate’, и ZIP-архив с проектом будет загружен на ваш компьютер.

Распакуйте архив и откройте папку проекта в вашей IDE. IntelliJ IDEA автоматически распознает его как Maven-проект и начнет загрузку зависимостей. Взгляните на структуру проекта. Ключевой файл — `pom.xml`, управляющий зависимостями. Обратите внимание на родительский проект `spring-boot-starter-parent`, который предоставляет умолчания и управление версиями. Класс с методом `main` находится в `src/main/java/com/example/myfirstapp/MyfirstappApplication.java`. Это точка входа в приложение. Аннотация `@SpringBootApplication` объединяет три ключевые аннотации: `@Configuration`, `@EnableAutoConfiguration` и `@ComponentScan`.

Давайте создадим простой REST API контроллер. В том же пакете создайте новый Java-класс с именем `HelloController`. Поместите в него следующий код. Используйте аннотацию `@RestController`, чтобы обозначить класс как контроллер, где каждый метод возвращает доменный объект вместо представления. Создайте метод, например, `sayHello()`, и пометьте его аннотацией `@GetMapping("/hello")`. Пусть он возвращает строку, например, "Hello, Spring Boot!". Сохраните файл.

Теперь приложение готово к запуску. Самый простой способ — запустить класс `MyfirstappApplication` прямо из IDE, нажав на зеленую стрелку рядом с методом `main`. В консоли вы увидите логи запуска. Spring Boot использует встроенный сервер (по умолчанию Tomcat), который стартует на порту 8080. Как только вы увидите сообщение "Started MyfirstappApplication in X seconds", откройте браузер и перейдите по адресу `http://localhost:8080/hello`. Вы должны увидеть ваше приветственное сообщение. Поздравляем, ваше первое Spring Boot приложение работает!

Для дальнейшего развития изучим работу с данными. Добавьте в `pom.xml` зависимость `spring-boot-starter-data-jpa` и драйвер для базы данных, например, `h2` для in-memory БД. Создайте простую сущность (Entity), например, `Product` с полями `id` и `name`. Создайте репозиторий-интерфейс, расширяющий `JpaRepository`. Spring Data JPA автоматически реализует основные CRUD-операции. Создайте сервисный слой и контроллер для управления продуктами. Это основа большинства бизнес-приложений.

Не менее важна конфигурация. Spring Boot позволяет гибко настраивать приложение через файл `application.properties` (или `application.yml`). Здесь можно изменить порт сервера (`server.port=9090`), параметры подключения к базе данных, настройки логирования и многое другое. Принцип "convention over configuration" означает, что Spring Boot предоставляет разумные значения по умолчанию, которые вы можете переопределить при необходимости.

Наконец, поговорим о сборке и деплое. Для создания исполняемого JAR-файла выполните в корне проекта команду `mvn clean package`. В папке `target` появится файл `myfirstapp-0.0.1-SNAPSHOT.jar`. Уникальность Spring Boot в том, что этот JAR является "fat JAR" — он содержит все зависимости и встроенный сервер. Для его запуска на любой машине с установленной Java достаточно выполнить команду `java -jar myfirstapp-0.0.1-SNAPSHOT.jar`. Это идеально подходит для контейнеризации с Docker и развертывания в облачных средах.

Следуя этим шагам, вы не только запустили приложение, но и заложили фундамент для понимания ключевых принципов Spring Boot: стартеры, автоконфигурация, standalone-запуск. Дальнейший путь включает изучение безопасности (Spring Security), тестирования, интеграции с messaging системами и мониторинга с помощью Spring Boot Actuator.
95 4

Комментарии (9)

avatar
2ajllszlh 27.03.2026
Актуально ли руководство? Spring Boot часто обновляется, некоторые шаги могли устареть.
avatar
j22cn9bl8 28.03.2026
Для полного нуба вроде меня маловато пояснений по установке JDK и настройке переменных окружения.
avatar
t0cz9a 28.03.2026
Всё понятно расписано, но хотелось бы больше примеров кода прямо в статье, а не ссылок.
avatar
x8kqzvhadim 28.03.2026
Не хватает сравнения с обычным Spring. Для новичка не очевидно, в чём именно преимущество Boot.
avatar
6k77dqfx18u 29.03.2026
Хорошо, но слишком базово. Ждал больше про подключение БД и настройку security уже в этом туториале.
avatar
tbfd03 29.03.2026
Спасибо! Долго боялся начинать, но ваша пошаговая инструкция действительно помогла запустить первое приложение.
avatar
scujxxin 30.03.2026
Отличное руководство для старта! Как раз искал что-то структурированное для первого проекта на Spring Boot.
avatar
hrlzoi 30.03.2026
Именно то, что нужно! Чёткие шаги, без воды. Автору респект за практичный подход.
avatar
dzj93ujllged 30.03.2026
Отличный фундамент. После такого введения уже не страшно углубляться в документацию и более сложные темы.
Вы просмотрели все комментарии