t1441332354 2018-05-26 09:32 采纳率: 71.8%
浏览 1302
已采纳

jsp页面查询数据库的问题

同样的sql语句在数据库里和jsp页面上的查询结果为什么不一样呢
这是jsp页面

            String sql = "select ItemName from DetectItem where id in (1,2)";
            ResultSet rs = stmt.executeQuery(sql);
            List<DetectItem> list = new ArrayList<DetectItem>();
            if(rs.next()){
                DetectItem dt = new DetectItem();
                dt.setItemName(rs.getString("ItemName"));
                list.add(dt);
                request.setAttribute("list",list);
            }else{
                out.print("未能查询到数据!");
            }
            rs.close();
            stmt.close();
            conn.close();
        }catch(ClassNotFoundException e){
            e.printStackTrace();
        }catch(SQLException e){
            e.printStackTrace();
        }
            List<DetectItem> list = (List<DetectItem>)request.getAttribute("list");
                if(list == null || list.size() < 1){
                    out.print("没有数据!");
                }else{
                    for(DetectItem dt : list){
                        out.print("ItemName:"+dt.getItemName());
                    }
                }
        %>

这是运行结果

图片说明

这是数据库的结果
图片说明

是我的jsp页面代码哪需要修改吗?求详解,谢谢

  • 写回答

5条回答 默认 最新

  • qq_41099505 2018-05-26 09:54
    关注

    jsp中你的那句if(rs.next())使得赋值语句只执行了一次,所以最后显示的结果才只有第一个数据,这句改成while(rs.next())就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器