啟動一個WEB項(xiàng)目的時候,容器(如:Tomcat)會去讀它的配置文件web.xml.
讀兩個節(jié)點(diǎn): <context-param></context-param> 和<listener></listener>
context-param 屬性1 加載的名稱 屬性2 加載的路徑
- 設(shè)置內(nèi)存監(jiān)聽器
此監(jiān)聽器主要用于解決java.beans.Introspector導(dǎo)致的內(nèi)存泄漏的問題
此監(jiān)聽器應(yīng)該配置在web.xml中與Spring相關(guān)監(jiān)聽器中的第一個位置(也要在ContextLoaderListener的前面)
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
- 監(jiān)聽spring核心配置文件
ContextLoaderListener 該類的作用就是自動裝載ApplicationContext的配置信息
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/src/main/resources/applicationContext.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
2.監(jiān)聽器 讀取log4j
log4jRefreshInterval 掃描間隔 每6秒掃描一次
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>6000</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
3.配置前端控制器DispatcherServlet
init-param 初始參數(shù) 加載配置文件
load-on-starup 加載優(yōu)先級 越小 優(yōu)先級越高
<servlet>
<servlet-name>cryq</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springMVC.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
4.http轉(zhuǎn)換8種方式
CREATE :PUT
READ:GET
UPDATE:POST
DELETE:DELETE
<filter>
<filter-name>hiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hiddenHttpMethodFilter</filter-name>
<servlet-name>cryq</servlet-name>
</filter-mapping>
5.解決post亂碼問題
有三個屬性 屬性1:編碼設(shè)置 utf-8 屬性2 : 強(qiáng)制請求編碼 屬性3 : 強(qiáng)制想贏編碼
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter<filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceRequestEncoding</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>forceResponseEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<servlet-name>cryq</servlet-name>
</filter-mapping>