第一篇:spring+springMVC項目啟動最終筆記(一web.xml)


1、web應用啟動從web.xml開始,首先創建一個全局的上下文(Context),名字叫ServletContext,可以理解為一間圖書館,或一個數據結構(如map,但是比map牛多了),整個結構類似圖書館--》書架--》計算機類書籍--》某一本書

2、listener監聽器開始
<!--spring的配置-->
<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener>

<!--spring bean配置文件加載-->
<context-param> 
<param-name>contextConfigLocation</param-name> 
<param-value>classpath*:conf/applicationContext*.xml</param-value>
</context-param>

來到ContextLoaderListener監聽,開始初始化並創建一個根上下文叫ApplicationContext,它是用來加載或者卸載spring管理的beans的,監聽器會將它放進ServletContext中key為"org.springframework.web.context.WebApplicationContext.ROOT"的attribute中

3、 servlet開始初始化(filter先不講),DispatcherServlet是springMVC的入口
<!--spring MVC的配置-->
<servlet> 
   <servlet-name>springmvc</servlet-name> 
   <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
      <init-param> 
         <param-name>contextConfigLocation</param-name>
         <param-value>classpath:conf/springmvc-servlet.xml</param-value> 
      </init-param>
      <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern> 
</servlet-mapping>
 DispatcherServlet創建自己的上下文,叫WebApplicationContext,並綁定到根上下文,以他為父親,WebApplicationContext管理它里面的handlers,controllers,它存放在"org.springframework.web.servlet.FrameworkServlet.CONTEXT."+(servletname)的attribute中,開始加載他的配置文件

4、關於springMVC配置文件名稱及路徑問題
(1)不指定,則默認需要在/WEB-INF/路徑下創建一個文件名為[servlet-name]加后綴"-servlet"的配置文件,上述配置文件為
springmvc-servlet.xml,默認路徑為/WEB-INF/springmvc-servlet.xml
(2)指定文件名及路徑有兩種情況
a、放在src下,則指定路徑寫為classpath:conf/springmvc-servlet.xml,這里classpath指發布目錄中的WEB-INF/classes,conf在src下一級文件夾,xml名可自己指定
b、放在WEB-INF文件夾下但自己指定xml名,則要寫明路徑為/WEB-INF/xxx.xml

接下來是springmvc單獨的配置文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM