mysql - 从 Servlet 在 JSP 中显示数据表

标签 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);

最佳答案

首先你的代码会有问题。您不应该将请求调度程序放入 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>

关于mysql - 从 Servlet 在 JSP 中显示数据表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28479676/

相关文章:

spring - 无法在 Tomcat 中启动 JSP

java - 我如何将 bean 写入 JSP,而不在它写入的内容后自动添加空格字符?

javascript - 脚本在 IE 9 中不起作用

java - 使用 Servlet 上传文件?

mysql - 让自己成为 MySQL 中的另一个 super 用户,但仅限于通过 unix 套接字连接时

MySQL TABLE_ROWS 估计

MySQL 授权问题

mysql - 两列唯一组合

java - 如何使用子文件夹作为 web.xml 欢迎目录

java - 如何从 HttpServletRequest getParameter 记录 CharConversionException