Arraylist的一个问题从数据库拿到多组数据但是只能读出一组-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Arraylist的一个问题从数据库拿到多组数据但是只能读出一组

这是数据库select方法public List getgameperson() {

    List<Gameperson> list = new ArrayList<Gameperson>();
    Connection conn = null;
    Statement  st = null;
    ResultSet  rs = null;
    try {
        conn = DBO.getconnection();
        st =(Statement) conn.createStatement();
        String  sql = "select *  from gameperson";
        rs = (ResultSet) st.executeQuery(sql);
        if(rs.next()){
            Gameperson gp = new Gameperson();
            gp.setId(rs.getInt("id"));
            gp.setCompetitorId(rs.getInt("competitorId"));
            gp.setGameId(rs.getInt("gameId"));

            list.add(gp);
        }
    } catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
    }finally{
        DBO.close(st, rs, conn);
    }
    return list;
}

这是拿出方法:

<%
List list = new ArrayList();
GamepersonDao gpo = new GamepersonDaoImpl();
list = gpo.getgameperson();
if(list!=null){
for (int i=0;i<list.size();i++){
Gameperson gp = list.get(i);
%>
<%=gp.getId()%>

<%=gp.getGameId() %>

<%=gp.getCompetitorId()%>

<%
}
} %>

现在数据库有很多组数据,但是为什么页面只能显示遍历一组?

展开
收起
蛮大人123 2016-03-13 19:09:09 1928 0
1 条回答
写回答
取消 提交回答
  • 蛮大人123
    我说我不帅他们就打我,还说我虚伪
    public List getgameperson() {
     // TODO Auto-generated method stub
        List<Gameperson> list = new ArrayList<Gameperson>();
        Connection conn = null;
        Statement  st = null;
        ResultSet  rs = null;
        try {
            conn = DBO.getconnection();
            st =(Statement) conn.createStatement();
            String  sql = "select *  from gameperson";
            rs = (ResultSet) st.executeQuery(sql);
           while(rs.next()){
                Gameperson gp = new Gameperson();
                gp.setId(rs.getInt("id"));
                gp.setCompetitorId(rs.getInt("competitorId"));
                gp.setGameId(rs.getInt("gameId"));
    
                list.add(gp);
            }
    
        } catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }finally{
            DBO.close(st, rs, conn);
        }
        return list;
    }
    2019-07-17 19:03:03
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
HBase2.0重新定义小对象实时存取
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载