Consultas lentas ao Banco de dados

E aee pessoal…

Eu estou criando uma tela para fazer consultas de patologias. Na tela tem um JTextField e um JList. Eu coloquei um Listener no JTextField para que a cada caracter inserido ele atualiza o JList com o conteúdo obtido por meio de um select no banco.

O problema está na repetição de consultas ao banco de dados. A cada caracter inserido ele realiza a consulta
e dessa forma a aplicação perde performance.

Gostaria de saber alguma maneira de realizar a tarefa descrita acima sem a necessidade de consultar o banco toda hora, tipo armazenar esses dados em cache ou algo parecido.

Aguardo um retorno

valew…

Uma saída seria fazer a consulta e armazenar em uma coleção,depois para cada caracter inserido você faz a busca na coleção e não diretamente no BD.
Valew!

hummm…nao sei se seria uma boa saida, mas armazenar os dados em uma xml e ficar atualizando o mesmo de tempos em tempos, senão estou enganado o ajax faz coisa parecida…é desta forma que ele ganha performace(essa ultima afirmação nao sei se esta correta)…