Spring的功能已经算是了解了,也就是帮助实例化对象,并且进行一些面向切面的功能插入。
先不论上述两者的具体实现技术,先看看在Web框架层面是如何将Spring整个引入进来的。
1、web.xml
Web应用启动后,最先解析的的就是web.xml,因此Spring加载的密码就藏在这里。
先看一个简单的web.xml样例。

其中配置项目就两项:
listener、context-param,就是这两者,完成了Spring的最初加载。
2、ContextLoaderListener
Spring提供了ServletContentListener的一个实现类ContextLoaderListener监听器,该类可以作为Listener使用,在启动Tomcat容器的时候,该类的作用就是自动装载ApplicationContext的配置信息。
如果没有设置contextConfigLocation的初始参数则会使用默认参数WEB-INF路径下的application.xml文件。如果需要自定义读取多个配置文件或者修改默认路径,则可以在web.xml中设置。
3、contextConfigLocation
如上web.xml中配置了该参数的地址,applicationContext*.xml。具体去看看该配置中的内容。

其实就是一系列需要实例化和装配的bean的地址和参数值信息,到这里,类的加载过程就算是完成了。
参考:
Spring :监听器ContextLoaderListener的作用
一个web项目web.xml的配置中配置作用
本文深入探讨Spring框架在Web应用中的整合过程,从web.xml配置入手,解析ContextLoaderListener监听器的作用,以及contextConfigLocation参数如何指定ApplicationContext配置信息,为读者揭示Spring在Web项目中的初始化秘密。
加载第一步——ContextLoaderListener&spm=1001.2101.3001.5002&articleId=85108170&d=1&t=3&u=5521b5ee6c8d40508685ae813b40c529)
1332

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



