DispatcherServlet 和 ContextLoaderListener 区别

总结一下:

  Spring的WebApplicationContext加载有2种:ContextLoaderListener和DispatcherServlet,在web.xml配置,ContextLoaderListener和DispatcherServlet有什么区别?

1 ContextLoaderListener
  在我们的web容器启动的时候启动的,默认会加载/WEB-INF/下面的applicationContext.xml文件。并创建一个WebApplicationContext容器,是web的Root WebApplicationContext。

2 DispatcherServlet
  在我们第一次访问我们的应用的时候创建的。这时候它默认会将配置在/WEB-INF下面的<servlet-name>-servlet.xml配置文件,然后也创建一个WebApplicationContext。这个WebApplicationContext将之前ContextLoaderListener创建的容器作为父容器。 因此在父容器中配置的所有Bean都能够被注入到子容器中;子容器中的bean,不能被父容器引用和使用。

可以参考一下另一篇文章:

http://angie.iteye.com/blog/2334956

猜你喜欢

转载自angie.iteye.com/blog/2334955