springmvc配置多视图 - tiles, velocity, freeMarker, jsp

Posted ck_2016

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc配置多视图 - tiles, velocity, freeMarker, jsp相关的知识,希望对你有一定的参考价值。

转自:

http://www.cnblogs.com/shanheyongmu/p/5684595.html

 

<!--  Velocity -->
<bean id="velocityViewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
     <property name="order" value="0" />
     <property name="contentType" value="text/html;charset=UTF-8" />
     <property name="requestContextAttribute" value="req"/>
</bean>   
<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
     <property name="configLocation" value="/WEB-INF/velocity.properties"/>
     <property name="resourceLoaderPath" value="/" />
</bean>

<!--  FreeMarker -->
<bean id="freeMarkerViewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  
    <property name="order" value="0" />
    <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>  
</bean>   
<bean id="freemarkerConfig"  class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  
   <property name="configLocation" value="/WEB-INF/freemarker.properties"/>
    <property name="templateLoaderPath" value="/WEB-INF/ftl/"/>  
     <property name="freemarkerVariables">
         <map>
            <entry key="xml_escape" value-ref="fmXmlEscape"/>
        </map>
     </property>
</bean>
<bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
  
  
<!-- Tiles-->  
<bean id="tilesViewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> 
    <property name="viewClass" value="org.springframework.web.servlet.view.tiles3.TilesView"></property>
  <property name="order" value="1" />
</bean> 
<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
    <property name="definitions">
      <list>
        <value>classpath:layout.xml</value>
    </list>
  </property>
</bean>

<!-- 定义JSP文件的位置 --> 
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/pages/"/>
    <property name="suffix" value=".jsp"/>
    <property name="order" value="1" />
</bean>

注意:

关键点 <property name="order" value="1" />配置 0,1,2,3,4,5,6......首先从0开始解析,依次往下,jsp的一定要放到最后,不然找到返回页面直接返回到404页面了,不会去其他页面匹配了,或者吧jsp的order设置到最高,这是个坑,或者自己写解析器进行解析。

 

以上是关于springmvc配置多视图 - tiles, velocity, freeMarker, jsp的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC 入门

springmvc简介

SpringMVC

spring mvc 如何配置最简洁的

Java、Spring、Apache Tiles 错误:无法解析名称为“dispatcher”的 servlet 中名称为“index”的视图

springMVC配置jsp/html视图解析器