Как создать приложение Spring MVC с использованием Maven в IntelliJ IDEA

DockerDockerBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом руководстве вы узнаете, как создать приложение Spring MVC с использованием Maven в среде разработки IntelliJ IDEA. Мы рассмотрим основные шаги, начиная от настройки среды разработки и заканчивая использованием Docker для контейнеризации, чтобы помочь вам приступить к созданию современных веб-приложений.

Введение в Spring MVC

Spring MVC - это популярный веб-приложений фреймворк, который является частью экосистемы Spring. Он следует архитектурному паттерну Model-View-Controller (MVC), который разделяет логику приложения на три взаимосвязанных компонента: модель, представление и контроллер.

Что такое Spring MVC?

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

Основные компоненты Spring MVC

Основные компоненты фреймворка Spring MVC:

  1. Модель (Model): Модель представляет данные и бизнес-логику приложения. Она отвечает за управление данными и состоянием приложения.

  2. Представление (View): Представление отвечает за рендеринг пользовательского интерфейса приложения. Оно отвечает за отображение данных пользователю и обработку пользовательских взаимодействий.

  3. Контроллер (Controller): Контроллер является посредником между моделью и представлением. Он получает запросы от пользователя, обрабатывает данные и передает их представлению для рендеринга.

graph LR A[Client] --> B[DispatcherServlet] B --> C[HandlerMapping] B --> D[Controller] D --> E[Model] D --> F[View] F --> A[Client]

Преимущества использования Spring MVC

Некоторые из основных преимуществ использования Spring MVC:

  1. Разделение ответственностей: Паттерн MVC способствует четкому разделению ответственностей, что делает код более поддерживаемым и тестируемым.
  2. Гибкость: Spring MVC предоставляет гибкую и настраиваемую архитектуру, позволяя разработчикам настраивать фреймворк под свои конкретные потребности.
  3. Масштабируемость: Spring MVC разработан с учетом масштабируемости, что делает его подходящим для создания крупномасштабных веб-приложений.
  4. Интеграция с другими модулями Spring: Spring MVC без труда интегрируется с другими модулями Spring, такими как Spring Security, Spring Data и Spring Boot, обеспечивая комплексный и согласованный опыт разработки.

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

Настройка среды разработки в IntelliJ IDEA

Для начала создания приложения Spring MVC с использованием Maven в IntelliJ IDEA вам необходимо настроить среду разработки. Вот как это можно сделать:

Установка Java Development Kit (JDK)

Сначала вам нужно установить Java Development Kit (JDK) на своей системе Ubuntu 22.04. Вы можете сделать это, выполнив следующие команды в терминале:

sudo apt update
sudo apt install openjdk-11-jdk

Проверьте установку, проверив версию Java:

java -version

Установка IntelliJ IDEA

Далее вам нужно установить IntelliJ IDEA, популярную интегрированную среду разработки (IDE) для разработки на Java. Вы можете скачать последнюю версию IntelliJ IDEA с официального сайта: https://www.jetbrains.com/idea/download/

После завершения загрузки извлеките ZIP - архив и выполните следующую команду, чтобы запустить IDE:

./idea.sh

Конфигурация проекта Spring MVC

  1. Откройте IntelliJ IDEA и создайте новый проект, выбрав "Create New Project" на экране приветствия.
  2. Выберите "Maven" в качестве типа проекта и нажмите "Next".
  3. Укажите имя и расположение проекта, затем нажмите "Finish".
  4. В структуре проекта щелкните правой кнопкой мыши по папке "src/main/java" и выберите "New" > "Package". Создайте пакет для своего приложения, например, "com.labex.springmvc".
  5. Щелкните правой кнопкой мыши по пакету и выберите "New" > "Java Class". Создайте новый класс для контроллера Spring MVC, например, "HelloController.java".
package com.labex.springmvc;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {

    @GetMapping("/")
    public String hello(Model model) {
        model.addAttribute("message", "Hello from LabEx Spring MVC!");
        return "hello";
    }
}
  1. Создайте новую папку с именем "templates" в каталоге "src/main/resources". Именно здесь вы будете размещать шаблоны представлений Spring MVC.
  2. Внутри папки "templates" создайте новый файл с именем "hello.html" и добавьте следующее содержимое:
<!doctype html>
<html xmlns:th="http://www.thymeleaf.org">
  <head>
    <title>Hello LabEx</title>
  </head>
  <body>
    <h1 th:text="${message}"></h1>
  </body>
</html>

Теперь вы настроили базовую среду разработки для своего приложения Spring MVC с использованием IntelliJ IDEA и Maven. Вы можете перейти к следующему шагу, который заключается в создании приложения Spring MVC.

Создание приложения Spring MVC с использованием Maven

Теперь, когда вы настроили среду разработки, давайте начнем создавать приложение Spring MVC с использованием Maven.

Конфигурация проекта Maven

  1. Откройте файл pom.xml в проекте IntelliJ IDEA.
  2. Добавьте необходимые зависимости для Spring MVC и Thymeleaf (движка шаблонов представлений), добавив следующий код внутри раздела <dependencies>:
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>2.7.0</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
        <version>2.7.0</version>
    </dependency>
</dependencies>
  1. Добавьте Maven - плагин Spring Boot в раздел <plugins> файла pom.xml:
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.7.0</version>
        </plugin>
    </plugins>
</build>

Реализация контроллера Spring MVC

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

package com.labex.springmvc;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {

    @GetMapping("/")
    public String hello(Model model) {
        model.addAttribute("message", "Hello from LabEx Spring MVC!");
        return "hello";
    }
}

Конфигурация приложения Spring MVC

Для настройки приложения Spring MVC вам нужно создать файл SpringMvcApplication.java в корневом пакете (например, com.labex.springmvc) со следующим содержимым:

package com.labex.springmvc;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringMvcApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringMvcApplication.class, args);
    }
}

Запуск приложения Spring MVC

  1. В терминале IntelliJ IDEA перейдите в каталог проекта и выполните следующую команду, чтобы собрать и запустить приложение:
mvn spring-boot:run
  1. После запуска приложения откройте веб - браузер и перейдите по адресу http://localhost:8080/. На странице должна отобразиться надпись "Hello from LabEx Spring MVC!".

Поздравляем! Вы успешно создали приложение Spring MVC с использованием Maven в IntelliJ IDEA. Теперь вы можете продолжить улучшать свое приложение, добавляя больше функциональности, таких как дополнительные контроллеры, сервисы и представления.

Резюме

В этом руководстве вы узнали, как создать приложение Spring MVC с использованием Maven в IntelliJ IDEA, а также как использовать Docker для контейнеризации. Следуя описанным шагам, вы должны теперь уметь настроить среду разработки, создать проект Spring MVC и упаковать свое приложение в Docker - контейнер для развертывания. Эти знания будут ценными, когда вы будете продолжать изучать и создавать веб - приложения с использованием Spring MVC и Docker.