jsp中两级菜单如何用c:forEach输出
| items | 要被循环的信息 | 否 | 无 | 
| begin | 开始的元素(0=第一个元素,1=第二个元素) | 否 | 0 | 
| end | 最后一个元素(0=第一个元素,1=第二个元素) | 否 | Last element | 
| step | 每一次迭代的步长 | 否 | 1 | 
| var | 代表当前条目的变量名称 | 否 | 无 | 
| varStatus | 代表循环状态的变量名称 | 否 | 无 | 
列:模拟数据 private Set<BookSubclass> bookSubclass;//一对多
单元测试:
    @Test
	    public void testCommidity(){//查找一二级目录
		      List<BookKind> kind=bookKindService.bookKind();
		        for(BookKind bo:kind){
			          System.out.println(bo.getKindName()+"====");
			            for(BookSubclass b:bo.getBookSubclass()){
				               System.out.print(b.getSubclassName()+"\t");
			            }
			            System.out.println();
		          }
		
	        }
成功励志====
  青少年励志	成功/激励	名言/格言	人生哲学	心灵与修养	
教育====
  工具书	考试	教材	外语	中小学教铺	
小说====
  科幻	中国现代小说	中国古典小说	玄幻	中国当代小说	
文艺====
  传记	艺术	文学	摄影	
童书====
  11-14岁	3-6岁	7-10岁	0-2岁	英文	
人文社科====
  历史	哲学/宗教	社会科学	古籍	法律	
经管====
  管理	投资管理	经济	
生活====
  保健	两性	青子/家教	运动	育儿	
科技====
  医学	建筑	农业	科普	计算机	工业	
期刊 /音像====
  期刊	影视	教育音像	创意文具	音乐
jsp页面输出:
<c:forEach items="${kinds}" var="k">
<c:forEach items="${k.bookSubclass }" var="sub">
</c:forEach>
</c:forEach>
就是这样
原文:https://www.cnblogs.com/yhm9/p/10416041.html