Spring MVC 之 視圖解析器ResourceBundleViewResolver

使用ResourceBundleViewResolver配置下bean就可以讓視圖解釋器支持解析多種視圖,而之前使用的UrlBasedViewResolver,就只支持解釋單一類型的視圖

ResourceBundleViewResolver通過讀取X.properties文件,進行視圖解析,這個文件位於classpath路徑下,X的值是通過設置ResourceBundleViewResolver的basename屬性來設定的

<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
	
	<!-- 配置處理器映射 -->
	<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
			<!-- http://colo-pc:8080/SpringMVC01/a.do時就會自動跳轉到a.jsp -->
				<prop key="a.do">a</prop>
				<prop key="b.do">b</prop>
			</props>
		</property>
	</bean>
	
	<bean id="a" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
		<property name="viewName" value="a"></property>
	</bean>
	
	<bean id="b" class="org.springframework.web.servlet.mvc.ParameterizableViewController">
		<property name="viewName" value="b"></property>
	</bean>
	
	<bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
	<!-- 設定屬性文件名爲views -->
		<property name="basename" value="views"></property>
	</bean>
	
	
</beans>


配置文件 views.properties

底下指明瞭,如果邏輯視圖名與其中某項匹配,就跳轉到相應的頁面去

a.class=org.springframework.web.servlet.view.JstlView
a.url=/WEB-INF/jsp/a.jsp
b.class=org.springframework.web.servlet.view.JstlView
b.url=/WEB-INF/jsp/b.jsp


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章