请教各位一下:我定义了一个VO是UserSelect,将从数据库中查到的数据放到ArrayList<UserSelect>,其泛型为VO
代码如下,请问怎么从这个ArrayList中取出我要的数据
ArrayList<UserSelect> userList = null;
try {
String sql = "SELECT * FROM user";
System.out.println(sql);
this.pstmt = this.conn.prepareStatement(sql);

ResultSet rs = pstmt.executeQuery();
userList = new ArrayList<UserSelect>();
while (rs.next()) {
UserSelect userSelect = new UserSelect();
userSelect.setId(rs.getInt("id"));
userSelect.setUsername(rs.getString("username"));
userSelect.setPassword(rs.getString("password"));
userSelect.setGender(rs.getString("gender"));
userSelect.setFaculty(rs.getString("faculty"));
userSelect.setGclass(rs.getString("gclass"));
userSelect.setQq(rs.getString("qq"));
userSelect.setTel(rs.getString("tel"));
userSelect.setFeixin(rs.getString("feixin"));
userSelect.setRole(rs.getInt("role"));
userSelect.setPic(rs.getString("pic"));

userList.add(userSelect);谢谢

解决方案 »

  1.   

    写一个循环就可以嘛!
    1:你先获得那个list即userList
    2:循环遍历
    for(UserSelect us : userList) {
       us各种get方法
    }
      

  2.   

    1:你先调用你写的那个方法  返回一个userList
    2:然后循环便利
    for(UserSelect us : userList) {
      调用us的相应get方法即可获得相应的属性值
       us.getUserName 返回的即查询出的username的值
    }
      

  3.   

    泛型的意思是可以传入任何类型,不用再强制转换。
    你要数据的是什么意思?你的数据已经封装成UserSelect这个类型,然后添加到你的userList了。所以你要取出来自然是要循环没错。或者你可以直接传给前台一个list通过struts标签遍历(iterator)或者jstl的forEach标签。你能说出你要什么数据么?
    2楼的做法意思上没错。