从Servlet中显示JSP中的数据表

时间:2015-02-12 14:13:00

标签: mysql jsp servlets netbeans attributes

如果有很多数据行,我如何在我的JSP页面上显示它,其中属性为course,name,admno为一行一行?

String sql = "Select * FROM details WHERE ADMNO = '" + adm + "'";
rs = stmt.executeQuery(sql);
while (rs.next()) {
  String course = rs.getString("COURSE");
  String name = rs.getString("NAME");
  String admno = rs.getString("ADMNO");

  request.setAttribute("course", course);
  request.setAttribute("name", name);
  request.setAttribute("admno", admno);

  System.err.println(course + " " + name + " " + admno);

  d = getServletContext().getRequestDispatcher("/output.jsp");
  d.forward(request, response);

1 个答案:

答案 0 :(得分:1)

首先您的代码会有问题。你不应该在while循环中放入请求调度程序。 OMG :(。第一次执行时,控件将进入jsp页面,循环将不会再次执行,因为控件失控到JSP。

我建议你3个步骤

1.创建像

这样的bean
 Class Student{
         String course;
         String name;
         String admNo;
         //Add getters and setters for all the members.
         //May be you can use constructor also for initializing in single shot.
    }

2.在您的Servlet中创建一个学生列表。为ResultSet中的每个记录创建学生对象。将该学生添加到请求中的学生列表。学生列表。

3.使用JSTL并迭代学生列表并显示在JSP

<c:forEach var="student" items="${studentlist}"> 
.... Your code here ...
</c:forEach>