Freemaker初接触(一) 集成SpringMVC问题
来源:互联网 发布:猪八戒淘宝直播 编辑:程序博客网 时间:2024/05/18 03:16
项目要求用到freemaker,简单的接触了一下。
freemaker的作用是,按照配置好的模板文件.ftl生成html文件。
可单独使用,也可集成到springmvc
freemarker页面解析器 的作用jsp页面解析器作用一样,用于解析返回的modelAndView中的页面。
此处配置存在的问题是,springmvc一般用
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="order" value="1">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="order" value="1">
</bean>
<!--
<bean id="securityMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<value>
</value>
</property>
</bean>-->
<!--
<bean id="securityMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<value>
</value>
</property>
</bean>-->
来解析页面。如果返回的是 new ModelAndView(“xxx.ftl”)那么会先解析到这个xxx.ftl为jsp,会一直找不到资源,所以需要加上额外的属性order,配置优先级,将jsp优先级配置为1,后于freemarker,解析器进行解析。但是此时问题还没有解决完,freemarker页面解析器又会将正常的jsp页面作为freemaker的资源进行解析。变相的解决办法为:在freemaker解析器中加入<property name="viewName" valie="XX*">,则freemarker只会去处理以XX开头通配的所有的资源。
废话少说,直接上配置,
<!-- freemarker页面解析器-->
<bean id="viewResolver1" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="suffix">
<value>.ftl</value>
</property>
<property name="viewClass">
<value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
</property>
<bean id="viewResolver1" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="suffix">
<value>.ftl</value>
</property>
<property name="viewClass">
<value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
</property>
<property name="viewName" valie="XX*">,
</bean>
<!-- 配置Freemarker -->
<bean id="freemarkerConfig"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPaths">
<list>
<value>/WEB-INF/view/</value>
<value>/WEB-INF/view1/</value>
</list>
</property>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="default_encoding">UTF-8</prop>
<prop key="number_format">0.##</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="classic_compatible">true</prop>
<prop key="template_exception_handler">ignore</prop>
</props>
</property>
</bean>
<!-- 配置Freemarker -->
<bean id="freemarkerConfig"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPaths">
<list>
<value>/WEB-INF/view/</value>
<value>/WEB-INF/view1/</value>
</list>
</property>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="default_encoding">UTF-8</prop>
<prop key="number_format">0.##</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="classic_compatible">true</prop>
<prop key="template_exception_handler">ignore</prop>
</props>
</property>
<property name="order" value="0">
</bean>
</bean>
配置好之后,即可正常使用freemakerConfig了
0 1
- Freemaker初接触(一) 集成SpringMVC问题
- Freemaker初接触(二) 简单生成html文件
- Freemaker初接触(五)导入公共ftl文件
- Freemaker初接触(三)基本类型和list和map的遍历
- Freemaker初接触(四)宏的了解和变量的类型
- SpringMVC 初接触
- springMVC初接触
- 钩子初接触(一)
- JMS初接触(一)
- FreeMaker教程(一)-----FreeMaker简介
- springmvc集成ajax问题
- SpringMVC整合Freemaker
- freemaker的初步使用(一)
- Material Design 初接触(一)
- springmvc 集成 tiles2实现页面模板局部刷新(一)
- cxf和springmvc集成问题
- SpringMVC集成Freemarker绝对路径问题
- spring boot 集成freemaker i18n
- 为速度而散列
- Masonry基本用法
- JSON数据 json.stringify()用法详解
- 文章标题
- Myeclipse使用常见问题汇总
- Freemaker初接触(一) 集成SpringMVC问题
- Java+eclipse+MySQL的配置
- 解决Ubuntu 14.04下Genymotion不能打开问题
- virtualbox相关问题系列
- 软件测试流程进阶----两年软件测试总结
- 编程算法(python)
- ipython notebook安装
- 单例的PCH宏定义
- android 调用百度地图SDK,出现 not found the liblocSDK4d.so 解决方法