一、导入freemarker的jar包

freemarker-2.3.15.jar


二、在springmvc.xml文件中配置freemarker的视图解析器

    <!-- freemarker的视图解析 配置freeMarker的模板路径 --><bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">  <property name="templateLoaderPath" value="/WEB-INF/view/" />  <property name="defaultEncoding" value="utf-8" />  <property name="freemarkerSettings">  <props>  <prop key="template_update_delay">10</prop>  <prop key="locale">zh_CN</prop>  <prop key="datetime_format">yyyy-MM-dd</prop>  <prop key="date_format">yyyy-MM-dd</prop>  <prop key="number_format">#.##</prop>  </props>  </property>  </bean>  <!-- FreeMarker视图解析    在这里配置后缀名ftl和视图解析器-->  <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">  <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"></property>  <property name="suffix" value=".ftl" />  <property name="contentType" value="text/html;charset=utf-8" />  <property name="exposeRequestAttributes" value="true" />  <property name="exposeSessionAttributes" value="true" />  <property name="exposeSpringMacroHelpers" value="true" />  </bean>   


三、编写controller测试freemarker

package com.hbut.ssm.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;@Controller
public class TestFreemarker {@RequestMapping("/freemarker")public String index(Model model){model.addAttribute("message","kaxifa");return "free";}
}

一点说明:

1.return "free";转发给视图的全路径是"WEB-INF/view/free.ftl";

2.由于freemarker的解析器配置了模板路径以及后缀.ftl,在此无需配置全路径

四、freemarker页面----free.ftl

<Html><head><title>${message}</title></head><body><b>${message}</b><body>
</html>

五、测试解析freemarker



六、freemarker中常见的操作

1.取list的索引   item_index(_index为取得list的索引)

<#list itemsList as item>
  ${item_index},${item.name},${item.price}<br>
</#list>

2.取list的size

itemsList?size   (说明:?替换.  后面家函数)

3.list的迭代

<#list itemsList as item>
  ${item_index},${item.name},${item.price}<br>
</#list>

4.迭代list里的map

<#list itemsMap as map>
  ${map["name"]}
 </#list>

springmvc使用freemarker相关推荐

  1. springmvc结合freemarker,非自定义标签

    参考:http://viralpatel.net/blogs/spring-mvc-freemarker-ftl-example/ 上图: 目录层级: 启动后的访问地址:http://localhos ...

  2. 怎么实现登录之后跳转到登录之前的页面?SpringMVC+Freemarker

    项目中,想实现一个功能. 直接访问某个需要登录的url,比如/addArticle,可能会跳转到登录页面login.html. 登录成功之后,自动跳转到/addArticle这个登录前的页面,继续登录 ...

  3. Spring mvc整合freemarker详解

    1.什么是FreeMarker FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写  FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模 ...

  4. 静态化freemarker,分布式文件系统minIO

    前言 #博学谷IT学技术支持# 一.freemarker 1.1freemarker 介绍 ​ FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网 ...

  5. java framemaker教程_《FreeMarker教程-笔录》

    今天我们学习一下FreeMarker模板引擎.它是基于模板文件生成其他文本的通用工具.本章我们主要讲使用FreeMarker模板引擎生成 .html 文件和生成 .java 类文件. 简介 FreeM ...

  6. SpringMVC基础三

    一.解决中文乱码问题 1.请求中文乱码 1.1get请求乱码问题 在toncat8.0以前需要在tomcat/conf/server.xml新增URIEncoding="UTF-8" ...

  7. freemarker简单使用

    freemarker简介 FreeMarker 是一款 模板引擎技术: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具. 它不是面向最终用户 ...

  8. 6.Freemarker

    Freemarker 1.freemarker 介绍 FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工 ...

  9. 基于javaweb的课程信息管理系统(java+springboot+freemarker+mysql)

    基于javaweb的课程信息管理系统(java+springboot+freemarker+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclip ...

最新文章

  1. linux java maven项目_Java maven项目在window下运行正常,部署到Linux环境中启动报错,是由什么引起的?...
  2. 前沿 | 美国白宫AI峰会闭幕:特朗普政府5大措施加速布局AI生态
  3. 深度学习的实用层面 —— 1.14 关于梯度检验实现的标记
  4. PHP中stripslashes()函数的解释
  5. Spring Cloud 服务注册与发现 [ eureka ]
  6. AI入门,从每个人都应该学的AI第一课开始
  7. 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_02 泛型_3_定义和使用含有泛型的类...
  8. 携手英特尔,百度开放云将提供更强悍云服务
  9. 大工20春《计算机应用基础》在线测试,大工20春《计算机应用基础》在线测试1...
  10. 手把手教你获得CSDN徽章:CSDN IT冷知识 每日一练
  11. java ip138_判读ip所在地(通过百度ip138的提供的服务) java实现
  12. 南卡和Snowkids电容笔哪款更值得入手?口碑最佳的国产电容笔
  13. C语言游戏: 俄罗斯方块(Tetris)@兼谈程序优化方法 [源码+exe下载]
  14. python爬虫数据分析项目 双十一_Python爬取淘宝商品数据,价值千元的爬虫外包项目!...
  15. 计算小分子之间的RMSD
  16. Redis( 缓存篇 ==> 互斥锁解决缓存击穿
  17. 单条视频播放3700w+,生鲜产品如何开启变现之路?
  18. 一般通话记录能保存多少条_电话的通话记录可以保存多久
  19. 黑社会祸害女人_InstagramReact按钮是祸害
  20. pinia中onAction

热门文章

  1. leetcode--872. 叶子相似的树
  2. 【解析】案例4-1.7 文件传输 (25 分)
  3. 【最详细解析+难点分析】1085 PAT单位排行 (25分)
  4. 在一台超级计算机上,编号为1,2,…,n的n个作业等待批处理。批处理的任务就是将这n个作业分成若干批,每批包含相邻的若干作业。从时刻0开始,分批加工这些作业。在每批作业开始前,机器需要启动时间S,而完
  5. (解题报告)L1-032 Left-pad (20分)——15行代码AC
  6. 算法竞赛入门经典|习题3-8, 循环小数(UVa202)
  7. git stash 强制恢复_git操作与分支管理规范
  8. 接受map_[译] 图解 Map、Reduce 和 Filter 数组方法
  9. linux内核irq,linux-kernel – do_IRQ中的中断向量和irq映射
  10. wxif 判断字符串相等_ES6:字符串、数组、对象的扩展