自定义DispatcherServlet配置--非xml配置

本文介绍了在Servlet 3.0环境中,如何通过继承AbstractAnnotationConfigDispatcherServletInitializer来配置DispatcherServlet。讲解了Spring的初始化过程,以及DispatcherServlet与ContextLoaderListener创建的两个不同上下文的作用。同时,提到了异常处理和@ControllerAdvice注解在控制器通知中的应用,强调了这种配置方式需要Servlet 3.0支持的服务器环境。
摘要由CSDN通过智能技术生成

AbstractAnnotationConfigDispatcherServletInitializer 类的继承结构

WebApplicationInitializer > AbstractContextLoaderInitializer > AbstractDispatcherServletInitializer > AbstractAnnotationConfigDispatcherServletInitializer

加载过程:
在Servlet 3.0环境中,容器会在类路径中查找实现javax.servlet.ServletContainerInitializer接口的类,如果能发现的话,就会用它来配置Servlet容器。

Spring提供了这个接口的实现,名为SpringServletContainerInitializer,这个类反过来又会查找实现WebApplicationInitializer的类并将配置的任务交给它们来完成。Spring3.2引入了一个便利的WebApplicationInitializer基础实现,也就是AbstractAnnotationConfigDispatcherServletInitializer

所以我们的配置类继承自AbstractAnnotationConfigDispatcherServletInitializer 来实现配置, 如下

public class SpitterWebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
   

  @Override  //用来配置ContextLoaderListener创建的应用上下文中的bean。
  protected Class<?>[] getRootConfigClasses() {
    return new Class<?>[] { RootConfig.class };
  }

  @Override  
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值