for循环嵌套遍历

**

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

测试结果:
for循环嵌套遍历_第1张图片

第二种方式

我这里一级分类是已经固定的,接下来根据一级列表查询数据库获得二级分类列表集合,这个时候想要进行三级分类列表查找就必须进行循环遍历,我新建一个实体类,二级分类具体的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

测试结果:
for循环嵌套遍历_第2张图片新建的实体类以及jsp页面如何调用:
for循环嵌套遍历_第3张图片
jsp页面显示结果,这里设置循环次数为5.可自行更改

for循环嵌套遍历_第4张图片

你可能感兴趣的:(SSM框架)