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设置到最高,这是个坑,或者自己写解析器进行解析。

时间: 2024-08-26 05:18:41

springmvc配置多视图 - tiles, velocity, freeMarker, jsp的相关文章

SpringMVC 配置多视图解析器(velocity,jsp)

1.自定义视图解析器 package com.zhaochao.controller; import java.util.HashMap; import java.util.Locale; import java.util.Map; import java.util.Set; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework

SpringMVC配置多视图JSP+freemarker,实践成功!(网上好多坑)

今天自己配置了一下SpringMVC 的多视图,本以为很简单,实践后发现各种问题,在网上查了很多资料,最后还是选择了看源码,终于知道为什么失败了,下面介绍一下. 失败配置! 成功只是改了几个小地方. <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="ht

springmvc 配置多视图,返回jsp,velocity,freeMarker,tiles(模板)等等

springmvc-servlet.xml配置 <!-- Velocity --> <bean id="velocityViewResolver" class = "org.springframework.web.servlet.view.velocity.VelocityViewResolver"> <property name="order" value="0" /> <prope

SpringMvc配置自定义视图

<!-- 配置视图 BeanNameViewResolver 解析器: 使用视图的名字来解析视图 --> <!-- 通过 order 属性来定义视图解析器的优先级, order 值越小优先级越高 --> <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"> <property name="order" value="100&

springmvc 返回ModelAndView视图解析不到jsp

问题重现 : 我在页面中请求的路径是, 类中对应的映射为, 但是实际执行是并没有把返回路径映射到 userinfo/MyJsp.jsp ,而是映射到了 userinfo/adduserinfo.jsp. 解决方法: 导致该问题出现的原因为导入的 ModelAndView 包错误,此时引入的包为org.springframework.web.portlet.ModelAndView;而正确包应该是 import org.springframework.web.servlet.ModelAndVie

SpringMVC 配置UEditor

SpringMVC 配置UEditor,把UEditor 下的jsp 文件夹放到项目中放jsp页面的目录下,在Controller中中写一个方法(如:@RequestMapping(value="/load/img")访问jsp页面(就跟访问一般的jsp页面一样),需要注意的是,jsp文件夹下的jsp文件和js文件必须放到一起.再把UEditor的后台配置中 URL 中的jsp/controller.jsp改为Controller中的方法的访问URL,就是上面所说的/YourContr

SpringMVC同时支持多视图 JSP Velocity Freemarker等 的一种思路实现

第一种方式: 在基于SpringMVC的项目中有时需要同时使用多种视图格式,如jsp,velocity及freemarker等,通过不同的请求路径配置规则,映射到不同的视图文件.下面我提供一种思路,通过视图模板文件后缀名的方式来进行处理.例如: @RequestMapping(value = "/hello") public String jspTest(HttpServletRequest request, ModelMap map) { return "demo.jsp&

SpringMVC配置JSON、JSP、FreeMark多视图解析器配置

 1.web.xml内容:  <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:web="http://java.sun.com/xml/ns/jav

springMVC配置jsp/html视图解析器

目录 1.maven项目引入freemark相关jar包 2.freemarker.properties 3.配置视图解析器 参考自springMVC配置jsp.html多视图解析器,本文稍作补充 1.maven项目引入freemark相关jar包 freemaker是以个模板引擎,可以根据提供的数据和创建好的模板,去自动的创建html静态页面.所以在返回html视图时可以用这个引擎结合数据生成html静态页面. <dependency> <groupId>org.springfr