//入口类,此类相当于web.xml
public class WebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] { SpringConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] { WebConfig.class };
}
@Override
protected String[] getServletMappings() {
return new String[]{ "/" };//请求路径映射,根路径
}
}SpringConfig直接使用上一篇文章即可。WebConfig.class:
@Configuration //声明spring config
@EnableWebMvc //声明springMVC
@ComponentScan("cn.itcast.springboot.controller") //扫描controller bean
public class WebConfig extends WebMvcConfigurerAdapter{
@Bean //视图解释
public ViewResolver viewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/page/");
resolver.setSuffix(".jsp");
resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
super.configureDefaultServletHandling(configurer);
configurer.enable();//对静态资源的访问请求转发到默认servlet上
}
}controller:@Controller
@RequestMapping("/")
public class UserController {
@RequestMapping("test")
public String test(){
return "index";
}
}
本文详细介绍了Spring MVC的Web配置实现方式,通过自定义WebInitializer类来替代传统的web.xml文件,实现了Spring配置类和Web配置类的加载。此外,还展示了如何通过WebConfig配置类来设置视图解析器及默认Servlet处理。
&spm=1001.2101.3001.5002&articleId=79045635&d=1&t=3&u=29f2b1c5b5ae423eb732172f53a54c5c)
1209

被折叠的 条评论
为什么被折叠?



