一、java 代码
@Test public void testFreeMarker() throws Exception { //1、创建一个模板文件 //2、创建一个Configuration对象 Configuration configuration = new Configuration(); //3、设置模板文件保存的目录 configuration.setDirectoryForTemplateLoading(new File("E:/workspaces/fw-item-web/src/main/webapp/WEB-INF/ftl")); //4、模板文件的编码格式,一般就是utf-8 configuration.setDefaultEncoding("utf-8"); //5、加载一个模板文件,创建一个模板对象。 Template template = configuration.getTemplate("testNull.ftl"); //6、创建一个数据集。可以是pojo也可以是map。推荐使用map Map data = new HashMap<>(); //添加 null 值 data.put("val", null); //7、创建一个Writer对象,指定输出文件的路径及文件名。 Writer out = new FileWriter(new File("E:/freemarker/testNull.html")); //8、生成静态页面 template.process(data, out); //9、关闭流 out.close(); }
二、testNull.ftl
<html> <head> <title>time</title> </head> <body> null 值的处理方式一:${val!"默认值"}<!--给 null 一个默认值--><br><br> null 值的处理方式二:<br> <#if val??> val 中有值 <#else> val 为 null </#if> </body> </html>
三、结果
来源:http://www.cnblogs.com/fangwu/p/8696390.html