JSP中循环输出数组集合对象的方法

时间:2020-05-13 23:56:05 类型:JAVA
字号:    

JSP中循环输出数组集合对象的方法

  1. Servlet类


  2. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try {
            Class.forName("com.mysql.jdbc.Driver");
            String jdbc="jdbc:mysql://127.0.0.1:3306/stu_info";
    
            Connection conn = DriverManager.getConnection(jdbc,"root","root");
            Statement  stmt  = conn.createStatement();
            String sql = "select * from students order by id desc limit 2";
            ResultSet rs = stmt.executeQuery(sql);
            SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
            ArrayList<Map> list = new ArrayList<Map>();
            while(rs.next()){
                String pic   = rs.getString("pic");
                Map<String,Object> map = new HashMap<String,Object>();
                map.put("id",rs.getInt("id"));
                map.put("names",rs.getString("names"));
                map.put("sex",rs.getString("sex"));
                map.put("blood",rs.getString("blood"));
                map.put("hobby",rs.getString("hobby"));
                map.put("time",ft.format(rs. getLong("time")));
                map.put("pic",rs.getString("pic"));
                list.add(map);
            }
            request.setAttribute("StudentList",list);
            request.getRequestDispatcher("/admin/student/index.jsp").forward(request,response);
    
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
    
    }
    JSP页面显示
  3. <%@ page import="java.util.ArrayList" %>
    <%@ page import="java.util.Map" %>
    <%@ page contentType="text/html;charset=UTF-8" language="java"  pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <html>
    <head>
        <title>学生信息列表</title>
    </head>
    <body>
        <%
            ArrayList<Map> StudentList = (ArrayList<Map>) request.getAttribute("StudentList");
        %>
            <table>
                <tr>
                    <td>ID</td>
                    <td>选择</td>
                    <td>姓名</td>
                    <td>性别</td>
                    <td>爱好</td>
                    <td>血型</td>
                    <td>操作</td>
                </tr>
                <%
                    String str = "";
                    for(Map map : StudentList ){
                        str = str + "<tr>";
                        str += "<td>"+map.get("id")+"</td>";
                        str += "<td><input type='checkbox' name='ids' value='"+map.get("id")+"'></td>";
                        str += "<td>"+map.get("names")+"</td>";
                        str += "<td>"+map.get("sex")+"</td>";
                        str += "<td>"+map.get("hobby")+"</td>";
                        str += "<td>"+map.get("blood")+"</td>";
                        str += "<td>" +
                                "<a href=''>修改</a>" +
                                "<a href=''>删除</a>" +
                                "</td>";
                        str += "</tr>";
                    }
                    out.println(str);
                %>
            </table>
            <table>
                <tr>
                    <td>ID</td>
                    <td>选择</td>
                    <td>姓名</td>
                    <td>性别</td>
                    <td>爱好</td>
                    <td>血型</td>
                    <td>操作</td>
                </tr>
                <c:forEach items="${StudentList}" var="user">
                    <tr>
                        <td>${user.get("id")}</td>
                        <td>
                            <input type="checkbox" name="ids" value="${user.get("id")}">
                        </td>
                        <td>${user.get("names")}</td>
                        <td>${user.get("sex")}</td>
                        <td>${user.get("hobby")}</td>
                        <td>${user.get("blood")}</td>
                        <td>
                            <a href="">修改</a>
                            <a href="">删除</a>
                        </td>
                    </tr>
                </c:forEach>
            </table>
    </body>
    </html>
<