从零学习freemarker(4)<#list 的使用

本文介绍了一个使用Freemarker模板引擎渲染列表的具体示例,包括Java代码配置及模板文件编写过程。通过实例展示了如何将Java List集合数据传递给模板,并在HTML中正确显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 原文:http://www.java2000.net/p7848

<#list 的使用

源代码
  1. package freemarker;

  2. import java.io.File;
  3. import java.io.FileOutputStream;
  4. import java.io.OutputStreamWriter;
  5. import java.io.Writer;
  6. import java.util.ArrayList;
  7. import java.util.HashMap;
  8. import java.util.List;
  9. import java.util.Map;
  10. import freemarker.template.Configuration;
  11. import freemarker.template.Template;

  12. public class TestList {
  13.   private Configuration cfg;

  14.   public Configuration getCfg() {
  15.     return cfg;
  16.   }

  17.   public void init() throws Exception {
  18.     cfg = new Configuration();
  19.     cfg.setDirectoryForTemplateLoading(new File("bin/freemaker"));
  20.   }

  21.   public static void main(String[] args) throws Exception {
  22.     TestList obj = new TestList();
  23.     obj.init();
  24.     Map root = new HashMap();
  25.     List<String> list = new ArrayList<String>();
  26.     list.add("java2000.net");
  27.     list.add("youkuaiyun.com");
  28.     root.put("list", list);
  29.     Template t = obj.getCfg().getTemplate("TestList.ftl");
  30.     Writer out = new OutputStreamWriter(new FileOutputStream("TestList.html"), "GBK");
  31.     t.process(root, out);
  32.     System.out.println("Successfull................");
  33.   }
  34. }
模板

  1. <table border=1>
  2.   <tr><th>站点名称</th></tr>
  3.   <#list list as website>
  4.   <tr><td>${website}</td></tr>
  5.   </#list>
  6. </table>  
运行结果
  1. <table border=1>
  2.   <tr><th>站点名称</th></tr>
  3.     <tr><td>java2000.net</td></tr>
  4.   <tr><td>youkuaiyun.com</td></tr>
  5. </table>  
结果分析
指定List的每个项目为后面的名字website,然后在里面用${website} 来访问

















<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值