Эта статья является частью книги Java. Состояние языка и его перспективы (2022).
В этой статье подробно расписано о том, как создавать новый проект с помощью Spring Initializr в Intellij IDEA.
Создание новых проектов с помощью Spring Initializr поддерживается только в Ultimate версии IDEA, в Community версии такой возможности по умолчанию нет, но можно установить плагин стороннего разработчика, если есть желание. Плагин стороннего разработчика выглядит очень похоже.
Далее используется Ultimate версия IntelliJ IDEA. Да, это платная версия, но вам выдадут на неё лицензию на работе, скорее всего, так что лично вам платить не придётся.
Создаём новый проект на Spring. Для этого в Ultimate версии IntelliJ IDEA кликаем на File ➣ New ➣ Project…

Если вы используете многомодульный проект, как это сделано в книге «Java в динамике (2022)», то нужно создавать новый модуль внутри уже существующего проекта кликнув на File ➣ New ➣ Module…

В открывшемся диалоговом окне выберите тип проекта Spring Initializr и заполните значения как на изображении ниже:

Name — название проекта
- Location — каталог на диске, где будут храниться файлы проекта.
- Language — язык проекта. Нужно выбрать Java.
- Type — тип менеджера зависимостей. Чаще всего используется Maven, его и нужно выбрать.
- Group — имя группы Maven-проекта.
- Artifact — название артефакта. Конечный JAR-файл будет иметь название -.jar
- Package name — имя пакета, которое будет создано для проекта.
- Project SDK — выберите 17-ую версию, по которой и написана эта книга
- Java — выберите 17.
- Packaging — выберите jar. Раньше приложения Spring деплоились внутри контейнеров сервлетов наподобие Apache Tomcat, Wildfly, WebSphere и аналогичных. В одном экземпляре контейнера севрлетов деплоилось несколько веб-приложений (несколько war-файлов). В большинстве современных проектов используется Spring Boot, где конечные jar уже содержат внутри себя контейнер сервлетов и сами настраивают ваше приложение на запуск.
После заполнения полей кликните по кнопке Next. Откроется окно выбора зависимостей будущего проекта. Разные проекты могут использовать разные зависимости. Для нашего примера в левом дереве нужно проставить галочки на четырёх пунктах:
- Spring Reactive Web (мы будем писать проект в реактивном стиле с Spring Web Flux).
- Spring Data R2DBC (для доступа к базе данных в реактивном стиле).
- H2 Database (встроенная база данных).
- Validation (для реализации функции проверки).

Кликните Finish.