传统的spring项目中springMVC配置多视图解析器(Freemarker+Velocity+Jsp)

application-context.xml

<!-- velocity视图解析器 -->
<bean id="velocityViewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
	<property name="order" value="0" />
	<property name="cache" value="${velocity.cache}"/>
	<property name="prefix" value=""/>
	<property name="suffix" value=".vm"/>

	<!-- if you want to use the Spring Velocity macros, set this property to true -->
	<property name="exposeSpringMacroHelpers" value="true"/>
	<property name="contentType" value="text/html;charset=UTF-8"></property>

	<property name="toolboxConfigLocation">
	  <value>/WEB-INF/classes/config/web/toolbox.xml</value>
	</property>
</bean>



<!-- FreeMarker视图解析器 -->
<bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
	<property name="contentType" value="text/html;charset=UTF-8"></property>
	<property name="requestContextAttribute" value="request" />
	<property name="exposeSpringMacroHelpers" value="true" />
	<property name="exposeRequestAttributes" value="true" />
	<property name="exposeSessionAttributes" value="true" />
	<property name="cache" value="true" />
	<property name="prefix" value="" />
	<property name="suffix" value=".ftl" />
	<property name="order" value="1"/>
</bean>


<!--通用视图解析器-->  
<bean id="viewResolverCommon" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
	<property name="prefix" value="/WEB-INF/page/"/>    
	<property name="suffix" value=".jsp"/><!--可为空,方便实现自已的依据扩展名来选择视图解释类的逻辑  -->  
	<property name="viewClass">  
		<value>org.springframework.web.servlet.view.InternalResourceView</value>  
	</property>  
	<property name="order" value="2"/>  
</bean>

 

视图选择顺序

其中视图优先级按照属性中的order进行排序,值越小,优先级越高

例如:按上述配置后,当映射地址返回视图路径名称aaaa时,会先访问aaaa.vm,找不到会访问aaaa.ft,
以此类推,当所有视图解析都解析不到时,会报404错误

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值