chengxu1234567 2020-06-06 12:10 采纳率: 50%
浏览 329
已采纳

跪求sql编写(遍历表里所有数据 pstmt 好人一生平安=-=)

跪求求遍历数据库方法
一般只能遍历出一行信息
一般只能获取一个类==
紧急!!!

图片说明
改为后
图片说明
可只能显示一条信息 还有大神知道为什么呢

  • 写回答

1条回答 默认 最新

  • TaylorLeeSwift 2020-06-06 12:17
    关注

    如果遍历的话是不是需要输出一个list
    这是我的方法,仅供参考

    public List<users> selectAll() throws Exception{
            List<users> list = new ArrayList<users>();
            //1.加载数据库驱动类
            Class.forName("com.mysql.cj.jdbc.Driver");
            //2.获取数据库连接
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/taylorlee?useSSL=false&serverTimezone=UTC","root","lym222");
            //3.获取数据库的执行对象
            //Connection conn = getConn();
            String sql = "select * from users";
            PreparedStatement ps = conn.prepareStatement(sql);
            //4.执行SQL语句
            ResultSet rs = ps.executeQuery();
    
            //5.处理结果集
            while(rs.next()){
                String id = rs.getString(1);
                String pwd = rs.getString(2);
                String name = rs.getString(3);
                String tel = rs.getString(4);
                users u = new users();
                u.setTel(tel);
                u.setUsername(name);
                u.setPassword(pwd);
                u.setUserid(id);
                list.add(u);
            }
            rs.close();
            ps.close();
            closeConn();
            return list;
        }
    
    

    这是你之后问的,我先贴上了jsp代码:

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    <%@ include file="test0531/head.jsp"%>
    
    
    
    <table border="1" width="600px">
        <tr>
            <td>编号</td>
            <td>用户名</td>
            <td>用户姓名</td>
            <td>联系方式</td>
            <td>可选操作</td>
        </tr>
        <%
            List<users> list = (List<users>)request.getAttribute("usersList");
            for(int i = 0;i<list.size();i++){
                users u = list.get(i);
        %>
            <tr>
                <td><%=i+1%></td>
                <td><%=u.getUserid()%></td>
                <td><%=u.getUsername()%></td>
                <td><%=u.getTel()%></td>
                <td>
                    <a href="CheckUserServlet?userid=<%=u.getUserid()%>">查看</a>
                    <a href="PreUpdateUserServlet?userid=<%=u.getUserid()%>">更改</a>
                    <a href="DeleteUserServlet?userid=<%=u.getUserid()%>">删除</a>
                </td>
            </tr>
        <%
            }
        %>
    </table>
        <jsp:include page="test0531/footer.jsp"></jsp:include>
    </body>
    </html>
    

    但我没看到你的servlet代码,我把我的附上给你作参考吧:

    public class SelectAllUsersServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            this.doGet(request,response);
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            try {
                usersDao usersdao = new usersDao();
                List<users> usersList = usersdao.selectAll();
                request.setAttribute("usersList",usersList);
                //必须使用请求转发跳转
                request.getRequestDispatcher("usersList.jsp").forward(request,response);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    

    我也是最近才学习的javaWeb,正好碰上实验课有这个内容,希望对你有帮助

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加
  • ¥15 用ns3仿真出5G核心网网元
  • ¥15 matlab答疑 关于海上风电的爬坡事件检测
  • ¥88 python部署量化回测异常问题