使用Jstl动态数据库表显示

我试图使用JSTL显示数据库数据,如下所示:

我的道

public ArrayList getStudentFirstName(){ ArrayList v = new ArrayList(); Connection conn; try{ conn = db.getDbConnection(); String sql = "select STU_FIRST_NAME, STU_MIDDLE_NAME, LAST_NAME from college_students_master"; PreparedStatement ps = conn.prepareStatement(sql); ResultSet rs = ps.executeQuery(); while(rs.next()){ String firstname = rs.getString("STU_FIRST_NAME"); String middlename = rs.getString("STU_MIDDLE_NAME"); String lastname = rs.getString("LAST_NAME"); v.add(firstname); v.add(middlename); v.add(lastname); } }catch(Exception asd){ System.out.println(asd.getMessage()); } return v; } 

我的servlet:

 public class displayservlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { DetailsDao dd = new DetailsDao(); request.setAttribute("firstname", dd.getStudentFirstName()); RequestDispatcher view = request.getRequestDispatcher("DemoJSP.jsp"); view.forward(request, response); } } 

我的JSP:

    JSP Page    The Demo Object Names Are:- 
${firstname}

我的展示:

在此处输入图像描述

第一个Name和MiddleName都在同一列上。 使用Jstl显示动态表的最佳方法是什么。 一个例子也会被赞赏。

编辑:我的预期输出是:我添加了额外的一列: 在此处输入图像描述

尝试这个,

创建一个名为Name的新Bean类

 public class Name { private String firstName; private String middleName; private String lastName; // relavent getter setter } 

改变你的方法getStudentFirstName()

 public ArrayList getStudentFirstName(){ ArrayList v = new ArrayList(); Connection conn; try{ conn = db.getDbConnection(); String sql = "select STU_FIRST_NAME, STU_MIDDLE_NAME from college_students_master"; PreparedStatement ps = conn.prepareStatement(sql); ResultSet rs = ps.executeQuery(); Name name = null; while(rs.next()){ name = new Name(); name.setFirstName(rs.getString("STU_FIRST_NAME")); //set your firstName name.setMiddleName(rs.getString("STU_MIDDLE_NAME")); //set your MiddleName name.setLastName(rs.getString("LAST_NAME")); //set your LastName v.add(name); } }catch(Exception asd){ System.out.println(asd.getMessage()); } return v; } 

改变你的c:forEach循环

  
First Name Middle Name Last Name
${name.firstName} ${name.middleName} ${name.lastName}