applicationContext.xml 对比 spring-servlet.xml
参考:https://www.baeldung.com/spring-applicationcontext-vs-spring-servlet-xml
默认需要指定ViewResolver,
可以通过注解指定 viewResolver (如JSP) https://www.baeldung.com/spring-mvc-view-resolver-tutorial,也可以通过web.xml中指定。
WebMvcConfigurer配置接口:
https://blog.csdn.net/pan_junbiao/article/details/120039885
采用 JavaBean 的形式来代替传统的 XML 配置文件形式进行针对框架个性化定制,可以自定义一些 Handler,Interceptor,ViewResolver,MessageConverter。
基于 java-based 方式的 Spring MVC 配置,需要创建一个配置类并实现 WebMvcConfigurer 接口(Spring 5.0之后建议直接实现WebMvcConfigurer接口)。
1 @Bean 2 public ViewResolver internalResourceViewResolver() { 3 InternalResourceViewResolver bean = new InternalResourceViewResolver(); 4 bean.setViewClass(JstlView.class); 5 bean.setPrefix("/WEB-INF/view/"); 6 bean.setSuffix(".jsp"); 7 return bean; 8 }
Spring Boot 1.5 版本:重写 WebMvcConfigurerAdapter 的方法来添加自定义拦截器,消息转换器等。SpringBoot 2.0 后,该类被标记为 @Deprecated(弃用)。
Spring Boot 官方推荐直接实现 WebMvcConfigurer 或者直接继承 WebMvcConfigurationSupport,方式一实现 WebMvcConfigurer接口(推荐),方式二继承 WebMvcConfigurationSupport 类,具体实现可看这篇文章。https://blog.csdn.net/fmwind/article/details/82832758
Spring Boot:@WebMvcAutoConfiguration automatically configures InternalResourceViewResolver and BeanNameViewResolver beans in our application context. ,所以不再需要指定
@WebFilter
@WebFilte(filterName = "iamTokenValidFilter", urlPatterns = "/*") public class IamTokenValidFilter implements Filter {