Spring MVC多个视图解析器及优先级

本文介绍了Spring MVC中三种视图解析器(Velocity、JSP、FreeMarker)的配置方法及优先级设置,对于多视图解析器共存的情况,通过order属性定义其优先级。
<!-- Velocity视图解析器 默认视图 -->
	<bean id="velocityViewResolver"
		class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
		<property name="contentType" value="text/html;charset=UTF-8" />
		<property name="viewNames" value="*.html" />
		<property name="suffix" value="" />
		<property name="dateToolAttribute" value="date" />
		<property name="numberToolAttribute" value="number" />
		<property name="toolboxConfigLocation" value="/WEB-INF/velocity-toolbox.xml" />
		<property name="requestContextAttribute" value="rc" />
		<property name="order" value="0" />
	</bean>


	<bean id="velocityConfigurer"
		class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
		<property name="resourceLoaderPath" value="/WEB-INF/page/" />
		<property name="velocityProperties">
			<props>
				<prop key="input.encoding">UTF-8</prop>
				<prop key="output.encoding">UTF-8</prop>
				<prop key="contentType">text/html;charset=UTF-8</prop>
			</props>
		</property>
	</bean>


	<!-- JSP视图解析器 -->
	<bean id="viewResolverJsp"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/page/" />
		<property name="viewClass"
			value="org.springframework.web.servlet.view.JstlView" />
		<property name="viewNames" value="*.jsp" />
		<property name="suffix" value="" />
		<property name="order" value="1" />
	</bean>


	<!-- FreeMarker视图解析器 -->
	<bean id="viewResolver"
		class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
		<property name="viewClass"
			value="org.springframework.web.servlet.view.freemarker.FreeMarkerView" />
		<property name="contentType" value="text/html; charset=utf-8" />
		<property name="cache" value="false" />
		<property name="viewNames" value="*.ftl" />
		<property name="suffix" value="" />
		<property name="order" value="2" />
	</bean>


	<bean
		class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
		<property name="templateLoaderPath" value="/WEB-INF/page/" />
<property name="freemarkerSettings">
			<props>
				<prop key="defaultEncoding">UTF-8</prop>
			</props>
		</property>
	</bean>
            


如果应用了多个视图解析器策略,那么就必须通过“order”属性来声明优先级,order值越低,则优先级越高

转载于:https://my.oschina.net/fwe/blog/1600331

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值