**
for循环嵌套遍历list集合中所有内容 **
第一种方式
package com.nnf.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.nnf.model.TGoodsCategory;
import com.nnf.service.TGoodsCategoryService;
@Controller
public class InitController {
@Autowired
private TGoodsCategoryService tcs;
@RequestMapping("init")
public String init(HttpServletRequest request,
HttpServletResponse response, HttpSession session) {//商品一级分类
System.out.println("一级划分:");
List firstList = tcs.selectByGoodsCategoryParentId(0);
//一级分类树状结构0-->服装 食品电子厂品 eg
List first =new ArrayList();
List second =new ArrayList();
List third =new ArrayList();
first.addAll(firstList);
//将一级列表添加到新的列表中
for(int m=0;
m secondList = tcs.selectByGoodsCategoryParentId(p);
//二级分类服装-->男装、女装、内衣 eg
second.addAll(m, secondList);
for(int n=0;
n thirdList =tcs.selectByGoodsCategoryParentId(q);
//三级分类男装--> T恤 上衣
third.addAll(n, thirdList);
for(int z=0;
z
测试结果:
文章图片
第二种方式 我这里一级分类是已经固定的,接下来根据一级列表查询数据库获得二级分类列表集合,这个时候想要进行三级分类列表查找就必须进行循环遍历,我新建一个实体类,二级分类具体的ID,名称,他的子类集合即三级分类列表集合便是这个实体类的属性。最后再根据我后面的方法循环遍历所有内容。
package com.nnf.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.nnf.model.SecondTGoodsCategory;
import com.nnf.model.TGoodsCategory;
import com.nnf.service.TGoodsCategoryService;
@Controller
public class InitController_2 {
@Autowired
private TGoodsCategoryService tcs;
@RequestMapping("init2")
public String init(HttpServletRequest request,
HttpServletResponse response, HttpSession session) {
// 商品一级分类
System.out.println("一级划分:");
List firstList = tcs.selectByGoodsCategoryParentId(0);
for(int i=0;
i clothList = tcs.selectByGoodsCategoryParentId(1);
//服装列表
for(int i=0;
i foodList = tcs.selectByGoodsCategoryParentId(2);
//食物列表
List eleProductsList = tcs.selectByGoodsCategoryParentId(3);
//电子产品列表
List electricityList = tcs.selectByGoodsCategoryParentId(4);
//电器
List sportList = tcs.selectByGoodsCategoryParentId(5);
//运动列表
// 商品三级分类
System.out.println("三级划分:");
//List clothList = tcs.selectByGoodsCategoryParentId(1);
//服装列表
List clothThirdAllList = new ArrayList();
List ss = new ArrayList();
for (int z = 0;
z < clothList.size();
z++) {
int goodsCategoryParentId = clothList.get(z).getGoodsCategoryId();
//二级分类的各个ID即三级分类列表的父类ID
String cName = clothList.get(z).getGoodsCategoryName();
List clothThirdList = tcs.selectByGoodsCategoryParentId(goodsCategoryParentId);
//单条三级列表SecondTGoodsCategory s = new SecondTGoodsCategory();
//一个实体类,实体类中的属性分别为 父类ID 父类名称所包含子类列表
s.setParentId(goodsCategoryParentId);
s.setcName(cName);
s.setList(clothThirdList);
ss.add(s);
}for(int i=0;
i
测试结果:
文章图片
新建的实体类以及jsp页面如何调用:
文章图片
jsp页面显示结果,这里设置循环次数为5.可自行更改
【for循环嵌套遍历】
文章图片