spring-mvc中,使用java配置DispatcherServlet,但是没有生效。。

嚎油根 2016-09-28 04:10:37
最近在学习spring实战(第四版)一书,遇上了问题,整了一天没整好,希望大家能帮我


public class SpittrWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{

@Override
protected String[] getServletMappings() {
return new String[] {"/"};
}

@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] {RootConfig.class};
}

@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] {WebConfig.class};
}

}



@Configuration
//启动spring mvc
@EnableWebMvc
@ComponentScan("spittr.web")
public class WebConfig extends WebMvcConfigurerAdapter{
//配置jsp视图解析器
@Bean
public ViewResolver viewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}

@Override
public void configureDefaultServletHandling(
DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}

}




@Configuration
@ComponentScan(basePackages = { "spittr" },
excludeFilters = {
@Filter(type = FilterType.ANNOTATION, value = EnableWebMvc.class)
})
public class RootConfig {

}


@Controller
public class HomeController {

@RequestMapping(value="/home", method=RequestMethod.GET)
public String home(){
return "home";
}
}



使用服务器Tomcat8 jdk7
spring jar包是4.0

按书上所说继承AbstractAnnotationConfigDispatcherServletInitializer类的,应该会被支持Servlet3.0的服务器自动加载
但是:
...全文
556 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
嚎油根 2016-09-28
  • 打赏
  • 举报
回复
嗯...本来spring是用user library导入的,放到WEB-INF下的lib里就行了
alipay_ 2016-09-28
  • 打赏
  • 举报
回复
沙发 +1 同问

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧