请教一个关于velocity递归的问题
模板如下:
#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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
引用来自#5楼“wubai”的帖子
如果不能使用递归,这种树状结构怎么使用模板生成树状结构呢。
如果不能使用递归,这种树状结构怎么使用模板生成树状结构呢。
引用来自#2楼“红薯”的帖子
velocity 的宏不能做递归哦
velocity 的宏不能做递归哦