Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

Работа со статическими ресурсами Java: Корпоративные приложения на Spring Boot

Spring Boot предоставляет автоматическую конфигурацию для отдачи статических ресурсов — например, JS, CSS или картинок. По умолчанию они автоматически отдаются по запросу из директории src/main/resources/static. Содержимое этой директории может выглядеть так:

  • src/main/resources/static/images/logo.png
  • src/main/resources/static/css/style.css
  • src/main/resources/static/js/app.js

Если предположить, что сервер стартует на 8080 порту, то получить доступ к этим файлам можно по следующим ссылкам:

  • http://localhost:8080/images/logo.png
  • http://localhost:8080/css/style.css
  • http://localhost:8080/js/app.js

Или то же самое внутри HTML-файлов:

<img src="/images/logo.png" alt="Logo" />
<link rel="stylesheet" href="/css/style.css" />
<script src="/js/app.js"></script>

Если ресурс не найден, то Spring Boot автоматически возвращает ошибку 404. Страницу с ошибкой можно кастомизировать, для этого необходимо создать файл 404.html в директории src/main/resources/public/error.

index.html

Входную страницу сайта или сервиса на Spring Boot можно получить двумя способами:

  • С помощью обработчика маршрута главной страницы http://localhost:8080
  • С помощью статического файла index.html добавленного в директорию src/main/resources/public. Spring Boot отдает этот файл автоматически при запросе на http://localhost:8080. Это самый распространенный способ при наличии фронтенд-части, создаваемой отдельно от Spring Boot

Рассмотрим пример файла:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Home Page</title>
    <link rel="stylesheet" href="/css/style.css" />
</head>
<body>
    <h1>Welcome to Hexlet!</h1>
    <img src="/images/logo.png" alt="Logo" />
    <script src="/js/app.js"></script>
</body>
</html>

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 2 мая

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»
Изображение Тото

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