... мы можем поместить файлы stati c (html) в один из:
- (src / main / resources :)
- stati c
- ресурсы
- publi c
- META-INF
, что приводит к местоположения по умолчанию (путь к классам), настроенные с помощью свойства spring.resources.static-locations
.
Они будут отображаться через значение spring.mvc.static-path-pattern
-property ( ref ), по умолчанию: /**
.
Таким образом, файл stati c index. html в одной из вышеупомянутых папок с конфигурацией по умолчанию будет доступен по адресу:
Соответственно: нет проблем с http://localhost: 8080 / тест. html ...
Оформление заказа в github .
Так что, по крайней мере, ответ на «заголовок вопроса» «Как обслуживать содержимое stati c в springboot 2.2.6?».
Порядок spring.resources.static-locations
(индекс. html предпочтительнее из META-INF / resources) также является "приоритетом" местоположений файла stati c (слева направо, первое совпадение выигрывает ).
Когда мы добавляем @EnableWebMvc
... "evertyhing прерывается" (только контекст загружается, но):
WARN ... o.s.web.servlet.PageNotFound : No mapping for GET /
WARN ... o.s.web.servlet.PageNotFound : No mapping for GET /index.html
WARN ... o.s.web.servlet.PageNotFound : No mapping for GET /test.html
.. Пожалуйста, учтите следующее: почему для приложения с пружинной загрузкой не требуется @ EnableWeb Mvc
При использовании "конфигурации не по умолчанию" вам потребуется предоставить более подробную информацию, чтобы найти конкретное c решение.
Но для "newb ie в Springboot": начиная с инициализатора, "значения по умолчанию" звучат оптимально! С этого момента вы можете перенастроить свою конфигурацию на основе рабочей.
И если вам нужно / нужно аннотация @EnableWebMvc
по некоторым причинам, это приведет к снова в «предыдущем» поведении / восстановите (2.2.6) стандартную обработку содержимого stati c по умолчанию:
@EnableWebMvc
@SpringBootApplication
public class DemoApplication implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry
.addResourceHandler("/**")
.addResourceLocations("classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/");
}
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
(при условии отсутствия конфликтов с существующими обработчиками конфигурации / ресурсов)