public Band allAvailableTimes(Band band) { Band ret = band; band.getLeader().setAvailableTimes(new Vector<AvailableTime>()); for (Musician m : band.getMusicians()) { m.setAvailableTimes(new Vector<AvailableTime>()); } try { PreparedStatement stmt = conn.prepareStatement( "select id, musician_id, start_time, end_time from available_times where band_id = ?", ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); stmt.setInt(1, band.getId()); ResultSet rs = stmt.executeQuery(); while (rs.next()) { for (Musician m : band.getMusicians()) { if (m.getId() == rs.getInt(2)) { m.addAvailableTime( new AvailableTime(rs.getInt(1), rs.getTimestamp(3), rs.getTimestamp(4))); } } if (band.getLeader().getId() == rs.getInt(2)) { band.getLeader() .addAvailableTime( new AvailableTime(rs.getInt(1), rs.getTimestamp(3), rs.getTimestamp(4))); } } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return ret; }