在spring mvc中,使用xmlviewresolver基于xml檔案中的視圖bean來解析“視圖名稱”。預設地,xmlviewresolver将從/web-inf/views.xml中加載視圖bean,不過,這個位置可以通過“location”屬性覆寫:
在上面這個例子中,它從“/web-inf/spring-views.xml”加載視圖bean。請看下面的xmlviewresolver示例。
一個控制器類welcomecontroller.java,傳回一個名為“welcomepage”的視圖。
在spring的bean配置檔案中,注冊xmlviewresolver視圖解析器,從“/web-inf/spring-views.xml”加載視圖bean。
視圖bean就是一個普通的spring bean,在spring bean配置檔案中聲明。其中:
(1)“id”是要解析的視圖名稱
(2)“class”是視圖的類型
(3)“url”屬性是視圖的url位置
檔案:spring-views.xml
解析過程:
當控制器傳回一個名為“welcomepage”的視圖時,xmlviewresolver将在“spring-views.xml”檔案中查找id為“welcomepage”的bean,并傳回相對應的視圖url“/web-inf/jsp/welcomepage.jsp”給dispatcherservlet。