2016-04-18 23 views
1

各行に6つの列を含むデータベースのResultSetがあります。ResultSetをDTO ArrayListにする方法

私にとって、各行はオブジェクトであり、各列はそのオブジェクトのパラメータです。昔はArrayListのある、

while(rs.next() && i<25){ 
     aux.setIdVinilo(rs.getInt("id_vinilo")); 
     aux.setTitulo(rs.getString("titulo")); 
     aux.setAutor(rs.getString("autor")); 
     aux.setGenero(rs.getString("genero")); 
     aux.setFecha(rs.getInt("fecha")); 
     aux.setDiscografica(rs.getString("discografica")); 
     aux.setImagen(rs.getString("imagen")); 

     historial.add(aux); 
     i++; 
    } 

RSがResultSetであるとAUXが示されているフィールドからなる私のDTOです:

質問があり、私はこのコードでそれをやろうとしています。

この問題は、同じ情報でArrayListを25回満たしてしまうという問題があります。だから私はrs.next()は、各反復の後に1つの行を前方に移動しないと思います。これをどのように達成するのですか?

答えて

6

問題は、あなたが再び同じオブジェクトを設定し、再び されているあなたは、ループ内で新しいオブジェクトを作成する必要が

while(rs.next() && i<25){      
     DTO aux=new DTO();// create aux object here 

     aux.setIdVinilo(rs.getInt("id_vinilo")); 
     aux.setTitulo(rs.getString("titulo")); 
     aux.setAutor(rs.getString("autor")); 
     aux.setGenero(rs.getString("genero")); 
     aux.setFecha(rs.getInt("fecha")); 
     aux.setDiscografica(rs.getString("discografica")); 
     aux.setImagen(rs.getString("imagen")); 

     historial.add(aux); 
     i++; 
} 
+0

うん内のDTOオブジェクトを作成します!それだった、ありがとう!すぐに回答を受け付けます^^ – dari1495

+0

@ dari1495私はうれしいです、あなたの問題は解決しました。 – SpringLearner

+0

@rev_dihazum edtitingありがとう – SpringLearner

関連する問題