org.freemarker
freemarker
2.3.23
Freemarker入门小DEMO
<#--我只是一个注释,我不会有任何输出 -->
${name},你好。${message}
//1.创建配置类
Configuration configuration=new Configuration(Configuration.getVersion());
//2.设置模板所在的目录
configuration.setDirectoryForTemplateLoading(new File("D:/pinyougou_work/freemarkerDemo/src/main/resources/"));
//3.设置字符集
configuration.setDefaultEncoding("utf-8");
//4.加载模板
Template template = configuration.getTemplate("test.ftl");
//5.创建数据模型
Map map=new HashMap();
map.put("name", "张三 ");
map.put("message", "欢迎来到神奇的品优购世界!");
//6.创建Writer对象
Writer out =new FileWriter(new File("d:\\test.html"));
//7.输出
template.process(map, out);
//8.关闭Writer对象
out.close();
<#assign linkman="周先生">
联系人:${linkman}
<#assign info={"mobile":"13301231212",'address':'北京市昌平区王府街'} >
电话:${info.mobile} 地址:${info.address}
黑马信息网
<#include "head.ftl">
<#if success=true>
你已通过实名认证
<#else>
你未通过实名认证
#if>
map.put("success", true);
List goodsList=new ArrayList();
Map goods1=new HashMap();
goods1.put("name", "苹果");
goods1.put("price", 5.8);
Map goods2=new HashMap();
goods2.put("name", "香蕉");
goods2.put("price", 2.5);
Map goods3=new HashMap();
goods3.put("name", "橘子");
goods3.put("price", 3.2);
goodsList.add(goods1);
goodsList.add(goods2);
goodsList.add(goods3);
map.put("goodsList", goodsList);
----商品价格表----
<#list goodsList as goods>
${goods_index+1} 商品名称: ${goods.name} 价格:${goods.price}
#list>
我们通常要得到某个集合的大小,如下图:
共 ${goodsList?size} 条记录
<#assign text="{'bank':'工商银行','account':'10101920201920212'}" />
<#assign data=text?eval />
开户行:${data.bank} 账号:${data.account}
(3)日期格式化
dataModel.put("today", new Date());
当前日期:${today?date}
当前时间:${today?time}
当前日期+时间:${today?datetime}
日期格式化: ${today?string("yyyy年MM月")}
map.put("point", 102920122);
修改模板
累计积分:${point}
累计积分:${point?c}
用法为:variable??,如果该变量存在,返回true,否则返回false
<#if aaa??>
aaa变量存在
<#else>
aaa变量不存在
#if>
${aaa!'-'}