0

我对下面的列表有疑问,我需要选择搜索 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 回答