现在的位置: 首页 > 综合 > 正文

Spring MVC 之 视图解析器ResourceBundleViewResolver

2013年10月03日 ⁄ 综合 ⁄ 共 1430字 ⁄ 字号 评论关闭

使用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

抱歉!评论已关闭.