Freemarker整合Spring
添加jar包
<!-- freemarker -->
<dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId>
</dependency>
配置文件
freeMarkerConfigurer
<!-- freemarker的配置 -->
<bean id="freeMarkerConfigurer" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"><property name="templateLoaderPath" value="/WEB-INF/ftl/"/><property name="defaultEncoding" value="utf-8"></property>
</bean>
加载配置文件
Web.xml加载springmvc.xml
<!-- 前端控制器 -->
<servlet><servlet-name>taotao-item-web</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation, springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" --><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/springmvc*.xml</param-value></init-param><load-on-startup>1</load-on-startup>
</servlet>
Controller
业务逻辑:
1、从spring容器中获得FreeMarkerConfigurer对象
2、从FreeMarkerConfigurer对象中获得Configuration对象
3、使用Configuration对象获得Template对象
4、创建数据集
5、创建输出文件的Writer对象
6、调用模板对象的process方法,生成文件
7、关闭流
@Controller
public class HtmlGenController {@Autowiredprivate FreeMarkerConfigurer freeMarkerConfigurer;@RequestMapping("/genhtml")@ResponseBodypublic String genHtml() throws Exception {//生成静态页面Configuration configuration = freeMarkerConfigurer.getConfiguration();Template template = configuration.getTemplate("hello.ftl");Map data = new HashMap<>();data.put("hello", "spring freemarker test");Writer out = new FileWriter(new File("D:/temp/javaee28/out/test.html"));template.process(data, out);out.close();//返回结果return "OK";}
}
Freemarker整合Spring相关推荐
- FreeMarker整合Spring 3
开发环境: System:Windows WebBrowser:IE6+.Firefox3+ JavaEE Server:tomcat5.0.2.8.tomcat6 IDE:eclipse.MyEcl ...
- spring源码分析之freemarker整合
FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程 ...
- 八、springboot整合Spring Security
springboot整合Spring Security 简介 Spring Security是一个功能强大且可高度自定义的身份验证和访问控制框架.它是保护基于Spring的应用程序的事实标准. Spr ...
- Portal-Basic Java Web 应用开发框架:应用篇(十一) —— 整合 Spring
Portal-Basic Java Web应用开发框架(简称 Portal-Basic)是一套功能完备的高性能Full-Stack Web应用开发框架,内置稳定高效的MVC基础架构和DAO框架(已内置 ...
- spring boot整合spring security笔记
最近自己做了一个小项目,正在进行springboot和spring Security的整合,有一丢丢的感悟,在这里分享一下: 首先,spring boot整合spring security最好是使用T ...
- Echache整合Spring缓存实例讲解
2019独角兽企业重金招聘Python工程师标准>>> 摘要:本文主要介绍了EhCache,并通过整合Spring给出了一个使用实例. 一.EhCache 介绍 EhCache 是一 ...
- Activiti工作流从入门到入土:整合spring
文章源码托管:https://github.com/OUYANGSIHAI/Activiti-learninig 欢迎 star !!! 一.前言 在上一节中,通过一个入门程序,把activiti的环 ...
- springboot2 war页面放在那_Spring Boot2 系列教程(三十三)整合 Spring Security
Spring Security 是 Spring 家族中的一个安全管理框架,实际上,在 Spring Boot 出现之前,Spring Security 就已经发展了多年了,但是使用的并不多,安全管理 ...
- springboot templates读取不到_整合spring mvc + mybatis,其实很简单,spring boot实践(5)
01 spring boot读取配置信息 02 多环境配置 03 处理全局异常 04 spring boot admin 主要通过spring boot整合spring mvc 以及mybatis实现 ...
最新文章
- Golang中time包
- python爬虫图片-python爬虫(爬取图片)
- [C语言] 文件操作,解压华为官方固件UNDATE.APP工具(源代码);
- 计算机科学与技术分享会,“相伴成长,绘梦未来”——计算机科学学院计算机科学与技术专业举办交流分享会...
- 解决mysql无法启动和重启:mysql.sock文件解锁
- mysql5.5安装最后一步一直无反应_【MATLAB R2019b】保姆级安装教程
- Terracotta Express Model 和 Terracotta Customized Model
- jquery分页插件的修改
- mysql master slave 灾备技术_MySQL灾备恢复在线主从复制变成主主复制及多源复制【转】...
- 硬盘安装Linux救援系统,通过急救系统里往硬盘里安装 alpine linux
- quartz定时器依赖_Spring Quartz定时器 配置文件详解
- 携程第二场预赛 1003:位图像素的颜色(水题,判断点是否在矩形内)
- 算法:求数组区间的和Range Sum Query - Immutable
- 思维固化,addTarget难道就只能给self
- python mro
- HTML期末作业-我的家乡网页作业
- c语言实现循环结构的语句有哪些?它们的区别是什么?,2011年04月份计算机软件基础(一)复习资料二...
- 成长了,记录一下,增值税发票识别写入excel文件里
- 浏览器开发者工具菜鸡相谈
- 力扣:我的日程安排表I