1. 程式人生 > >Spring與SpringMVC的關係

Spring與SpringMVC的關係

在此鑑於你已經瞭解過Spring的相關知識,簡單描述一下Spring與Spring的關係

聯絡:

在框架的使用中,Spring類似於一個具有多種特性,也可以說是多種功能模組的應用平臺,(特性就比如IoC,AOP,事務處理,持久化驅動等等),並且可以用來與其他一些優秀並流行的開源框架進行快速的整合。對於一個完整的WEB框架或應用平臺來說,MVC模型的模組一定是必不可少的,而SpringMVC就是建立在Spring應用平臺之上的MVC模型。

瞭解SpringMVC之前,首先要了解如何將IoC模組如何應用於WEB專案中:

以Tomcat為例,IoC容器通常在WEB容器初始化的時候就選擇去載入。其中自然涉及到web.xml中的幾個屬性:

  • DispatcherServlet
    用於分發請求,一般在WEB容器的初始化階段就開始初始化

  • context-param
    指定SpringIoC容器讀取Bean定義的XML檔案

  • ContextLoaderListener
    SpringMVC的啟動類,負責完成IoC容器在WEB環境中的啟動工作

對於ContextLoaderListener:

存在理由:為了在WEB容器中建立IoC容器
具體:實現了ServletContextListener,提供了與Servlet生命週期相結合的回撥,就類似於Servlet初始化與銷燬的contextInitialized()方法與contextDestory()

方法。

實際上IoC容器的載入過程由ContextLoader完成,其中分為兩步:

  1. 在WEB容器中建立起雙親IoC容器
  2. 生成相應的WebApplicationContext並將其初始化,如果在上下文初始化過程中沒有指定IoC容器,將使用預設的XmlWebApplicationContext作為WEB環境中使用的IoC容器。