Аннотация замена конфигурации для mvc: resources-Spring


Я пытаюсь обновить свой проект spring mvc, чтобы использовать новые аннотации и избавиться от моего xml. Ранее я загружал свои статические ресурсы в мой web.xml С строку:

<mvc:resources mapping="/resources/**" location="/resources/" /> 

теперь, я с использованием WebApplicationInitializer класс а @EnableWebMvc аннотация для запуска моего сервиса без каких-либо xml-файлов, но, похоже, не может понять, как загрузить мои ресурсы.

есть ли аннотация или новая конфигурация, чтобы вернуть эти ресурсы без необходимости использования xml?

2 61

2 ответа:

один из способов сделать это-расширить класс конфигурации WebMvcConfigurerAdapter, затем переопределите следующий метод как таковой:

@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}

Весна 5

начиная с весны 5, правильный способ сделать это-просто реализовать WebMvcConfigurer интерфейс.

например:

@Configuration
@EnableWebMvc
public class MyApplication implements WebMvcConfigurer {

    public void addResourceHandlers(final ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
    }
}

см. устаревшее сообщение в: WebMvcConfigurerAdapter