如何在 spring 中设置处理程序映射的优先级以允许资源处理程序在控制器请求映射之前映射?
例如这个配置:
@Configuration
@EnableWebMvc
@ComponentScan("org.commons.sandbox")
public class WebConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry){
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
@Bean
public ViewResolver viewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setViewClass(JstlView.class);
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
return resolver;
}
}
使用以下控制器:
@Controller
public class HomeController {
@RequestMapping("/**")
public String home(){
return "home";
}
}
捕获对“/resources”的请求。所以链接到css文件是jsp返回“home”视图而不是“resources”目录中的实际css文件。我知道这是由于映射“/ **”,但我认为有一种方法可以配置映射顺序......有吗?
谢谢!