web.xml有監聽器、前置控制器、過濾器前端
監聽器:當web容器啓動時,自動裝配ApplicationContext的配置信息web
前置控制器:使用spring MVC配置前置控制器是第一步;一個DispatcherServlet表明一個servlet,因此可配置多個DispatcherServlet。spring
過濾器:針對每次的請求進行過濾。CharacterEncodingFilter可解決頁面傳來字符串的編碼問題(其中encoding用來設置編碼格式,forceEncoding用來設置是否理會 request.getCharacterEncoding()方法,設置爲true則強制覆蓋以前的編碼格式。)mvc
<display-name>項目名稱</display-name>
<context-param><!--ApplicationContext 配置信息 --> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/classes/spring/applicationContext-*.xml</param-value> </context-param>
<listener><!-- 監聽器:當web容器啓動時,會自動裝配ApplicationContext 中的配置信息--> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
<servlet><!--前置控制器:在DispatcherServlet初始化中會掃描路徑下的xml文件,生成文件定義的bean --> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/springmvc.xml</param-value> </init-param> </servlet>
<servlet-mapping><!--前端控制器的攔截設置 --> <servlet-name>springmvc</servlet-name> <url-pattern>*.action</url-pattern> </servlet-mapping>
<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>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>