out.println("类别列表");//为什么这句话打印不出来那?并且程序没有往下执行!!!???
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ page import="java.sql.*,com.jnkaixin.shopping.*,java.util.*" %>
<%@ include file="_sessioncheck.jsp" %> 
<%
//get all the users;
List<Category> categories = Category.getCategories(); 
%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
</head>
<body>
     <table border="1", align="center">
        <tr>
           <td>ID</td>
           <td>name</td>
           <td>Pid</td>
           <td>grade</td>
           <td></td>
          
        </tr>
        <%
        for(Iterator<Category> it = categories.iterator(); it.hasNext(); ){
            out.println("类别列表");//为什么这句话打印不出来那?
            Category c = it.next();
            String preStr = "";
            for(int i = 1; i<c.getGrade(); i++){
             preStr += "----";
            }
        %>
        
           <tr>
           <td><%=c.getId() %></td>
           <td><%=preStr + c.getName() %></td>
           <td><%=c.getPid() %></td>
           <td><%=c.getGrade() %></td>
    
           <td>
              <a href="categoryadd.jsp?pid=<%=c.getId() %>">添加子类别</a>
           </td>
         
           </tr>
        
        <%
        }
        %>
        
        
        
        
        
     </table>
</body>
</html>

解决方案 »

  1.   

    是这样的,程序运行时,只出现了 表头,但是没有从数据库中把类别拿出来。我是想打印出来看看程序是否执行到这个地方了,可是并没有打印出东西来啊。???也就是说程序没有进入FOR循环啊,。???
      

  2.   


    <% 
            for(Category c:categories)

                out.println("类别列表");//为什么这句话打印不出来那? 
                String preStr = ""; 
                for(int i = 1; i <c.getGrade(); i++){ 
              preStr += "----"; 
                } 
            %>
    换成这个试试。
      

  3.   

    如果还不行,应该是楼主list里面没有数据了。检查一下list.size().
      

  4.   

    有可能你迭代的it为空,it.hasNext()为假,所以不执行循环。