FreeMarker 入门示例

匿名 (未验证) 提交于 2019-12-03 00:08:02
FreeMarker 是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生 成输出文本(HTML 网页、电子邮件、配置文件、源代码等)的通用工具。  工作原理           模板(基于freemarket语法编写的.ftl文件) + 数据模型(java对象) = 输出(htmlxmljavajsp等文件)

 

 

1. 创建工程

2. 添加依赖

 <dependencies>         <dependency>             <groupId>org.freemarker</groupId>             <artifactId>freemarker</artifactId>             <version>2.3.23</version>         </dependency>         <dependency>             <groupId>junit</groupId>             <artifactId>junit</artifactId>             <version>4.12</version>         </dependency>     </dependencies>

3. 创建模板文件

<!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>Freemarker 测试</title> </head> <body> <#--这是 freemarker注释,不会输出到文件中 -->  <h1>${name};${message}</h1>  </body> </html>

 

4. 生成文件

@Test     public void test() throws Exception {          //1.创建一个 Configuration 对象, 参数是freemarker 的版本号         Configuration configuration = new Configuration(Configuration.getVersion());          //2.设置模板文件所在的路径         configuration.setClassForTemplateLoading(FreemarkerTest.class, "/ftl");          //3. 设置模板文件使用的字符集         configuration.setDefaultEncoding("utf-8");          //4. 获取模板         Template template = configuration.getTemplate("test.ftl");          //5. 创建一个模板使用的数据集,可以是 pojo 也可以是 map;一般是 Map         Map<String, Object> map = new HashMap<>();         map.put("name", "安莉莉");         map.put("message", "hello nice to meet you !");          //6. 创建一个 Writer 对象,一般创建 FileWriter 对象,指定生成的文件名         FileWriter fileWriter = new FileWriter("C:\\MyFiles\\pomelo\\test\\test.html");          //7. 调用模板对象的 process 方法输出文件         template.process(map, fileWriter);          //8. 关闭流         fileWriter.close();       }

 

常见符号      ${ }插值;只能输出数值、日期或者字符串,其它类型不能输出。       <#freemarker 命令           <#-- 注释 -->       <@使用自定义命令       ??是判断对象是否存在       ?函数调用 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!