Caros, acredito que eu tenha procurado errado, mas não achei nada que esclarece minhas duvidas.
Tenho uma consulta que retornou mais de 10000 linhas, como devo tratalas para exibi-las?
Caros, acredito que eu tenha procurado errado, mas não achei nada que esclarece minhas duvidas.
Tenho uma consulta que retornou mais de 10000 linhas, como devo tratalas para exibi-las?
Paginação 
Tá usando o que na camada de persistência? JDBC, Hibernate…
JDBC, então eu usarei paginação sim, mas o fato dele retornar sei la 10mil linhas nao influencia na performance digo como devo fazer para melhorar isso.
Depende do que quer fazer. É realmente necessário trazer as 10 mil linhas? Se sim, pesquise sobre LazyLoad. Se não, reveja sua query. Teste no banco primeiro se for o caso.
Espero ter ajudado.
Não entendi… em que sentido vc quer melhorar isto? o tempo que demora para trazer estas 10mil linhas?
se for isto qual o sgbd que esta usando?
quanto tempo demora sua consulta?
poste sua query ai…
Se sua consulta vai sofrer paginação, não recomendo fazer uma única consulta.
Poderia trazer uma count das linhas e depois trabalhar com quantidades menores de dados para a paginação.
Não sei se era nisso que estava pensando?
Não, pois usando paginação você não trará 10000 registros de uma vez. Se você definir que a página tem 50 registros, você só trará os primeiros 50 e cada vez que o usuário clicar em um número de página você recuperará os 50 registros correspondentes àquela página.
Passos:
A consulta esta meio estranha, estou disposto a opiniões pois estou aprendendo.
"SELECT TimeStamp, S.StatusDescription as FinalStatus, PortID, Node, N11, "
"DestAddr, SrcAddr, Request ,Response , CallDuration, "
"M.MessageTypeDescription as MessageType, F.MessageFormatDescription as MessageFormat, "
"TerminalID,ProcessingCode, MessageType, modem FROM LoggingRecords L"
"INNER JOIN StatusTypes S ON L.FinalStatus = S.StatusCode"
"INNER JOIN MessageType M ON L.MessageType = M.MessageTypeCode"
"INNER JOIN MessageFormats F ON L.MessageFormat = F.MessageFormatCode"
"where L.TimeStamp >=? and L.TimeStamp <=?"
Com o retorno, eu vou gerar um relatorio em jsp, que vai mostrar de 30 em 30 linhas, o que estou pensando em fazer é, criar uma lista com um objeto populado com cada linha?
Estou errado?
Muito obrigado pela ajuda galera
Se você trouxer os 10000 registros, criar um objeto pra cada um e colocar em uma lista, vai ficar mais lento do que já está.
Você precisa consultar os registros de 30 em 30. Tente entender as linhas guia que passei no último post - adapte os exemplos para 30 registros por página.
Sim! Ja estou fazendo aqui, valeu mesmo cara!