常用的web.xml的配置 1、Spring 框架解決字元串編碼問題:過濾器 CharacterEncodingFilter(filter-name) 2、在web.xml配置監聽器ContextLoaderListener(listener-class) ContextLoaderListener ...
常用的web.xml的配置
1、Spring 框架解決字元串編碼問題:過濾器 CharacterEncodingFilter(filter-name)
2、在web.xml配置監聽器ContextLoaderListener(listener-class)
ContextLoaderListener的作用就是啟動Web容器時,自動裝配ApplicationContext的配置信息。因為它實現了ServletContextListener這個介面,在web.xml配置這個監聽器,啟動容器時,就會預設執行它實現的方法。
3、部署applicationContext的xml文件:contextConfigLocation(context-param下的param-name)
4、DispatcherServlet是前置控制器,配置在web.xml文件中。攔截匹配的請求,Servlet攔截匹配規則要自已定義,把攔截下來的請求,依據某某規則分發到目標Controller來處理。
DispatcherServlet(servlet-name、servlet-class、init-param、param-name(contextConfigLocation)、param-value)
在DispatcherServlet的初始化過程中,框架會在web應用的 WEB-INF文件夾下尋找名為[servlet-name]-servlet.xml 的配置文件,生成文件中定義的bean
(1) 配置filter過濾器
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app version="2.5" 3 xmlns="http://java.sun.com/xml/ns/javaee" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 6 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 7 8 <!-- 解決Spring框架中從頁面傳來的字元串的中文亂碼問題 9 Spring框架給我們提供過濾器CharacterEncodingFilter 10 這個過濾器就是針對於每次瀏覽器請求進行過濾的,然後再其之上添加了父類沒有的功能即處理字元編碼。 11 其中encoding用來設置編碼格式,forceEncoding用來設置是否理會 request.getCharacterEncoding()方法,設置為true則強制覆蓋之前的編碼格式,根據需要設置。--> 12 <filter> 13 <filter-name>characterEncodingFilter</filter-name> 14 <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 15 <init-param> 16 <param-name>encoding</param-name> // 用來指定一個具體的字元集 17 <param-value>UTF-8</param-value> 18 </init-param> 19 <init-param> 20 <param-name>forceEncoding</param-name> //true:無論request是否指定了字元集,都使用encoding;false:如果request已指定一個字元集,則不使用encoding 21 <param-value>true</param-value> 22 </init-param> 23 </filter> 24 <filter-mapping> 25 <filter-name>characterEncodingFilter</filter-name> 26 <url-pattern>/*</url-pattern> 27 </filter-mapping>
配置節點詳解:
<filter> : 指定一個過濾器
<filter-name> : 為過濾器指定一個名字,該元素不能為空
<filter-class> : 指定過濾器的完整的限定類名
<init-param> : 為過濾器指定初始化參數
<param-name> : 指定參數的名字
<param-value> : 指定參數的值
<filter-mapping> : 用於設置一個Filter所負責攔截的資源
<filter-name> : 用於設置filter的註冊名稱,該值必須是在<filter>元素中聲明過的過濾器名稱
<url-pattern> : 設置filter所攔截的請求路徑(過濾器關聯的url樣式)
(2) Servlet配置
1 <servlet> 2 <servlet-name>DispatcherServlet</servlet-name> // 指定一個servlet名稱 3 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> //指定servlet的類全路徑 4 <init-param> 5 <param-name>contextConfigLocation</param-name> //初始化參數名 6 <param-value>classpath:spring/dispatcher-servlet.xml</param-value> //初始化參數值 7 </init-param> 8 <load-on-startup>1</load-on-startup> //指定當web容器啟動時,載入servlet的順序 9 </servlet> 10 <servlet-mapping> 11 <servlet-name>DispatcherServlet</servlet-name> //servlet名稱 12 <url-pattern>/</url-pattern> //映射路徑 13 </servlet-mapping>
配置節點詳解:
1)使用SpringMVC配置DispatcherServlet是第一步,DispatcherServlet是一個Servlet,,所以可以配置多個DispatcherServlet
2)DispatcherServlet是前置控制器,配置在web.xml文件中。攔截匹配的請求,Servlet攔截匹配規則要自已定義,把攔截下來的請求,依據某某規則分發到目標Controller(我們寫的Action)來處理。
3) <servlet> : 在DispatcherServlet的初始化過程中,框架會在web應用的 WEB-INF文件夾下尋找名為[servlet-name]-servlet.xml 的配置文件,生成文件中定義的bean。
4) <servlet-name> : servlet名稱
5) <servlet-class> : servlet類全路徑
6) <param-name> : 初始化參數名
7) <param-value> : 初始化參數值
8) <load-on-startup> : 指定當Web應用啟動時,載入Servlet的順序
9) <url-pattern> : 映射路徑
(3) 指定歡迎頁面配置
1 <welcome-file-list> 2 <welcome-file>hello.jsp</welcome-file> //指定歡迎頁面 3 </welcome-file-list>
(4) 監聽器配置
1 <listener> 2 <listerner-class>org.springframework.web.context.ContextLoaderListener</listener-class> 3 </listener>
(5) 會話超時配置
<session-config>
<session-timeout>100</session-timeout>
</session-config>
(6) 配置錯誤頁面
1) 通過錯誤碼來配置error-page
1 <!--配置了當系統發生404錯誤時,跳轉到錯誤處理頁面NotFound.jsp--> 2 <error-page> 3 <error-code>404</error-code> 4 <location>/NotFound.jsp</location> 5 </error-page>
2) 通過異常的類型來配置error-page
<!--配置了當系統發生java.lang.NullException(即空指針異常)時,跳轉到錯誤處理頁面error.jsp--> <error-page> <exception-type>java.lang.NullException</exception-type> <location>/error.jsp</location> </error-page>
最後配置一個簡單的web.xml即可實現SpeingMVC框架
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app version="2.5" 3 xmlns="http://java.sun.com/xml/ns/javaee" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 6 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 7 <welcome-file-list> 8 <welcome-file>hello.jsp</welcome-file> 9 </welcome-file-list> 10 <servlet> 11 <servlet-name>SpringMVC</servlet-name> 12 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 13 <load-on-startup>1</load-on-startup> 14 </servlet> 15 <servlet-mapping> 16 <servlet-name>SpringMVC</servlet-name> 17 <url-pattern>/</url-pattern> 18 </servlet-mapping> 19 </web-app>
有需要補充的還需各位閱讀的大牛們給點建議!
如果您覺得閱讀本文對您有幫助,請點一下按鈕,您的將是我最大的寫作動力!另外您也可以選擇【關註我】,可以很方便找到我!
本文版權歸作者和博客園共有,來源網址:https://www.cnblogs.com/歡迎各位轉載,但是未經作者本人同意,轉載文章之後必須在文章頁面明顯位置給出作者和原文連接,否則保留追究法律責任的權利!