public Map<Integer, List<Type>> getTypeMap(int uid,int status){
//首先定义Map和list集合 Map<Integer, List<Type>> map = new HashMap<Integer, List<Type>>(); List<Type> list = new ArrayList<Type>(); Type type1 = null; //定义父栏目为0 int pid = 0; String sql = ""; String sqll = ""; try {
super.getCon(); if(status == 1){
sql = "select * from t_type where pid = 0"; }else{
sql = "select * from t_type where id in (select pid from t_type where id in (select tId from t_userType where uid ="+uid+"))and pid = 0"; //查询所有为0的栏目信息 } pstmt = con.prepareStatement(sql); rs = pstmt.executeQuery(); while(rs.next()){
type1= new Type(); type1.setId(rs.getInt("id")); type1.setType(rs.getString("type")); type1.setDetail(rs.getString("detail")); type1.setPid(rs.getInt("pid")); list.add(type1); //将查询到的信息存入list中 map.put(0, list); //将list添加到map集合中 } //循环所有为0的信息 for (int i = 0; i < list.size(); i++) {
List<Type> list1 = new ArrayList<Type>(); pid = ((Type)list.get(i)).getId(); if(status == 1){
sqll = "select * from t_type where pid = "+pid; } else{
sqll = "select * from t_type where id in (select tid from t_userType where uid = "+uid+") and pid != 0"; } pstmt = con.prepareStatement(sqll); rs = pstmt.executeQuery(); while(rs.next()){