SpringMVC配置web.xml文件詳解(列舉經常使用的配置)

經常使用的web.xml的配置java

一、Spring 框架解決字符串編碼問題:過濾器 CharacterEncodingFilter(filter-name) 
二、在web.xml配置監聽器ContextLoaderListener(listener-class) 
ContextLoaderListener的做用就是啓動Web容器時,自動裝配ApplicationContext的配置信息。由於它實現了ServletContextListener這個接口,在web.xml配置這個監聽器,啓動容器時,就會默認執行它實現的方法。 
三、部署applicationContext的xml文件:contextConfigLocation(context-param下的param-name) 
四、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 的配置文件,生成文件中定義的beanweb

(1) 配置filter過濾器spring

 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> : 指定一個過濾器session

<filter-name> : 爲過濾器指定一個名字,該元素不能爲空app

<filter-class> : 指定過濾器的完整的限定類名框架

<init-param> : 爲過濾器指定初始化參數jsp

<param-name> : 指定參數的名字編碼

<param-value> : 指定參數的值url

<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/歡迎各位轉載,可是未經做者本人贊成,轉載文章以後必須在文章頁面明顯位置給出做者和原文鏈接,不然保留追究法律責任的權利!

相關文章
相關標籤/搜索