0

以下のリストに問題があります。select で ID を検索してオブジェクトを出力する必要があります。間違ったことをしていることはわかっていますが、どうすれば修正できますか? while または for を残すべきですか?

String query = "SELECT id, fecha, folio FROM capacitacion.pedido WHERE id = ?"; 

PreparedStatement s = con.prepareStatement(query);   
s.setInt(1, obj.getId());

ResultSet resultado = s.executeQuery(); 

while(resultado.next()){
    for(PedidoDetalleDTO detalle : obj.getPedidoDetalle()) {
        dto.getId();
        dto.getFecha();
        dto.getTotal();
        dto.getFolio();
    }
}
4

1 に答える 1

1

ResultSet の使い方を誤解していると思います。単なる例(実際のコードではありません):

String query = "SELECT id, fecha, folio FROM capacitacion.pedido WHERE id = ?"; 

PreparedStatement s = con.prepareStatement(query);   
s.setInt(1, obj.getId());

List<Foo> fooList = new ArrayList<Foo>();

ResultSet resultado = s.executeQuery(); 

while(resultado.next()){  
    Foo f = new Foo();
    f.setId( resultado.getInt( "id" ) );
    f.setFecha( resultado.getString( "fecha" ) );
    fooList.add( f );
}

for ( Foo f : fooList ) {
    System.out.println( f.getId() + " " + f.getFecha() );
}
于 2012-08-24T15:15:03.430 に答える