[Spring MVC] - JSP + Freemarker视图解释器整合
Spring MVC中如果只使用JSP做视图,可以使用下面这段即可解决:
<!-- 视图解释类 --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/><!--可为空,方便实现自已的依据扩展名来选择视图解释类的逻辑 --><property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /></bean>
但很多时候我们需要的不只是JSP做view,可能会引用velocity、freemarker等做为view引擎时,需要加入额外的配置。
下面是在配置文件中加入Freemarker的方法,与JSP并存:
<!--JSP视图解析器--><bean id="viewResolverJsp" class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/><property name="viewClass" value="org.springframework.web.servlet.view.InternalResourceView"/><property name="order" value="1"/></bean><!-- 配置freeMarker视图解析器 --><bean id="viewResolverFtl" 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="exposeRequestAttributes" value="true" /><property name="exposeSessionAttributes" value="true" /><property name="exposeSpringMacroHelpers" value="true" /><property name="cache" value="true" /><property name="suffix" value=".ftl" /><property name="order" value="0"/></bean><!-- 配置freeMarker的模板路径 --><bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"><property name="templateLoaderPath" value="/WEB-INF/views/"/><property name="freemarkerVariables"><map><entry key="xml_escape" value-ref="fmXmlEscape" /></map></property><property name="defaultEncoding" value="UTF-8"/><property name="freemarkerSettings"><props><prop key="template_update_delay">3600</prop><prop key="locale">zh_CN</prop><prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop><prop key="date_format">yyyy-MM-dd</prop><prop key="number_format">#.##</prop></props></property></bean><bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
在JSP和Freemarker的配置项中都有一个order property,上面例子是把freemarker的order设置为0,jsp为1。
意思是找view时,先找ftl文件,再找jsp文件做为视图。
测试:
Controller:
package com.my.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView;@Controller @RequestMapping(value="ftl") public class TestFreemarker {@RequestMapping(method=RequestMethod.GET)public ModelAndView index() {ModelAndView view = new ModelAndView("TestFreemarker/index");view.addObject("message", "Say hi for Freemarker.");return view;}}
index.ftl:
<Html><head><title>${message}</title></head><body><b>${message}</b><body> </html>
输出:
转载于:https://www.cnblogs.com/HD/p/4142822.html
[Spring MVC] - JSP + Freemarker视图解释器整合相关推荐
- [Spring MVC] - JSP + Freemarker视图解释器整合(转)
Spring MVC中如果只使用JSP做视图,可以使用下面这段即可解决: <!-- 视图解释类 --><bean class="org.springframework.we ...
- Spring MVC(5):视图 视图解析
Spring MVC 支持的视图技术 Spring MVC 请求处理方法处理完成后,会返回一个 ModelAndView 对象,该对象包含了模型对象的信息,和视图逻辑名,再借助视图解析器(ViewRe ...
- Spring MVC中的视图解析ViewResolver
http://blog.csdn.net/prince2270/article/details/5891085 在Spring MVC中,当Controller将请求处理结果放入到ModelAndVi ...
- Spring MVC JSP 表单标签教程
在本教程中,我们将通过一个示例讨论所有与Spring MVC相关的JSP表单标签. 在本教程中,我们将使用下面重要的弹簧MVC表单标签进行讨论: 表单标签 文本字段标签 选择标签 复选框 无线电盒 密 ...
- 中input标签赋值_Java程序员:Spring MVC JSP表单标签示例
Spring MVC的表单标签为Java程序员提供了许多额外的支持.例如数据绑定,允许自动设置数据并从Java对象中检索数据. 从2.0版本开始,Spring提供了一组全面的数据绑定感知标记,用于在使 ...
- jsp ajax三级联动,Spring MVC+JSP实现三级联动
initProvinces(); });/** * 获取省列表*/function initProvinces() { $('#province').empty(); $.ajax({ type :& ...
- Spring+Spring Mvc+Mybatis+MySqlite(SSM框架整合Xml配置)
MyBatis Spring-mvc的对应配置 Log的配置 MyBatis 我们在resources下创建spring-mybatis.xml,对应的参数配置 <?xml version=&q ...
- Spring MVC 中自定义视图 @Component 及 配置 多个视图解析器 Excel视图
首先我们建立一个自己的View实现View接口.要注意在类上面加上@Component的注解,因为看BeanNameViewResolver的源码知道,是直接从ioc容器里面拿的根据名字拿的视图,所以 ...
- SSM框架超级详细整合记录:Spring+Spring MVC+MyBatis+Maven+MySQL
1.前言 本文主要对SSM框架整合的过程进行记录,作为之后参考的依据. 1.1.参考文章 Spring代码实例系列-绪论 Spring MVC代码实例系列-绪论 MyBatis代码实例系列-绪论 1. ...
最新文章
- [vue]饿了么的element-ui修改样式后不生效
- Django开发社交类网站必备的10个第三方应用
- 最佳圆角字体,设计师的最爱
- [framework] debuging
- 3个查看远端端口是否畅通的方法
- Java集合--WeakHashMap
- Python中第三方库Requests库的高级用法详解
- 如何向Mac Dictionary App添加其他语言
- 【Docker】问题汇总
- 【转】MFC中用CFile读取和写入文件2
- 为期45天的记忆训练
- 行业案例 | 数据分析在银行业应用之欺诈检测
- 计算机公式固定数值符号,【2人回答】Excel如何锁定,如何Excel某计算公式中锁定其中一个数值?-3D溜溜网...
- 自抗扰控制中的扩张状态观测器收敛性分析1
- Jquery通过append新元素之后事件绑定问题的解决方案
- vue-meta 设置页面 <meta>
- unexpected error while obtaining UI hierarchy
- 错题集:Censored!
- 参数化建模类毕业论文文献有哪些?
- 区块链 - DAPP