Мое приложение Spring Boot в основном будет состоять из двух основных «модулей»:
- «Веб-модуль», состоящий из статических HTML-страниц, доступных для публики (пользователи, не прошедшие проверку подлинности/анонимные мыши); а также
- Модуль «Приложение», состоящий из нескольких динамических страниц, каждая из которых требует аутентификации (на основе Spring Security) для доступа.
Базовая структура приложения:
index.html
: домашняя страница, сопоставленная сhttp://localhost:8080/
about.html
: страница "О нас", сопоставленная сhttp://localhost:8080/about
contact.html
: страница контактов, сопоставленная сhttp://localhost:8080/contact
login.html
: страница входа, сопоставленная сhttp://localhost:8080/login
dashboard.html
: информационная панель/целевая страница, на которую вы попадаете после входа в систему, сопоставленная сhttp://localhost:8080/account
.- Все остальные страницы под
http://localhost:8080/account/*
будут MVC/динамическими страницами с типичными@RequestMapping
сопоставлениями.
Что мне не ясно, так это то, что для статических («общедоступных» веб-страниц) HTML-страниц я:
- Просто использовать стандартный
@RequestMappings
на основе контроллера, который отображает некоторый шаблон Thymeleaf/Handlebars (у которого просто нет модели данных, поскольку содержимое статично)? Или я: - Рассматривайте эти страницы как статический контент (так же, как CSS/JS) и обслуживайте их как статический контент, как предписывает Spring Boot? Если это правильный вариант, то как мне добиться правильного сопоставления URL-адресов (например, пользователи могут просто перейти на
http://localhost:8080/contact
вместоhttp://localhost:8080/contact.html
)?