请教一个关于velocity递归的问题

发布于 2021-11-08 21:59:49 字数 1376 浏览 925 评论 4

模板如下:
#macro(recur$p_id)
#foreach ($cat in $list)
$cat.name $cat.id $p_id
#if ($cat.pid == $p_id)
  data:$cat.name $cat.id
  #recur($cat.id)

#end
#end
#end

#recur(0)

 

Catalog.java如下:
public class Catalog {
 public Catalog(int id, int pid, String name) {
  super();
  this.id = id;
  this.pid = pid;
  this.name = name;
 }
 
 private int id;
 private int pid;
 private String name;
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public int getPid() {
  return pid;
 }
 public void setPid(int pid) {
  this.pid = pid;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}

数据如下:
List<Catalog> list = new ArrayList<Catalog>();
list.add(new Catalog(1,0,"home"));
list.add(new Catalog(2,0,"news"));
list.add(new Catalog(3,0,"about"));
list.add(new Catalog(4,2,"news-1"));
list.add(new Catalog(5,2,"news-2"));
list.add(new Catalog(6,2,"news-3"));

问题进行递归时从第二级就不能出来了。

 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

离不开的别离 2021-11-14 08:13:04

引用来自#5楼“wubai”的帖子

如果不能使用递归,这种树状结构怎么使用模板生成树状结构呢。

多情癖 2021-11-14 06:41:38

如果不能使用递归,这种树状结构怎么使用模板生成树状结构呢。

醉酒的小男人 2021-11-14 01:59:53

引用来自#2楼“红薯”的帖子

velocity 的宏不能做递归哦

清晨说ぺ晚安 2021-11-12 16:36:35

velocity 的宏不能做递归哦

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文