Objetos DAO estou com duvida se estou criando eles corretamente

Pessoal, eu tenho uma tabela de processos e uma tabela filha com o andamento destes processos. Tenho varios andamentos para cada processo.

Preciso mostrar num JSP os processos e seus andamentos.

Criei um objeto Porcesso, um ProcessoDAO, Andamento e AndamentoDAO
Dentro do processo eu tenho um arraylist do tipo andamento.

Tenho um metodo na classe AndamentoDAO que faz o seguinte:

Rece como parametro o codigo do processo pra eu usar no select.
Abro conexao com o banco
Faco o select
Enquanto tiver dados
Crio objeto Andamento carregando com o resultset
Adiciono no arraylist que é o tipo de retorno deste método.

O problema é que eu tenho muitos processos e o que está acontecendo é que eu estou abrindo muitas conexoes com o banco de dados.
Qual a forma correta de fazer o que eu estou fazendo?

Estou procurando um pooling de conexoes pra ver se resolvo este problemas de varios objetos de conexao, mas gostaria de saber se o que estou fazendo esta certo.

Obrigado pela ajuda!

Mesmo utilizando um pool, não é muito bom ficar pegando e liberando conexões a todo momento. Você pode abrir uma conexão só e fornecer ela para os métodos da sua DAO. Tem alguns jeitos de fazer isso.

umm

eu achava que o certo era sempre que fossemos carregar um objeto com os dados do banco deveriamos criar a conexao, popular o objeto e depois fechar a conexao…
Mas realmente desta forma ele estava abrindo muitas conexoes…

Valeu!

Depende do caso, certo? :wink:

Se você precisa executar este método da DAO 100 vezes numa única requisição, fica meio sem condições criar ou pegar do pool 100 conexões hehe

Aliás, porque não cria um método na sua DAO que retorna uma lista de objetos Processo que por sua vez contém uma lista de objetos Andamento?

Ia ficar bonitão :smiley:

É exatamente este o meu problema:oops:

Estou fazendo isso :slight_smile:
O problema é que tava criando uma conexao ao banco pra cada consulta…
Valeu!