Remover entity beans!

Olá!
Estou começando com J2EE agora e gostaria de saber se o melhor modo de excluir todos os entity beans em uma base de dados é iterando um coleção na memória ?

Existe um modo melhor de fazer isso?

Ex.:
Collection colRules = compilRulesEntityHome.findByAllRules();
Iterator itRules = colRules.iterator();
while (itRules.hasNext()){
CompilRulesEntity compilRulesEntity = (CompilRulesEntity) itRules.next();
compilRulesEntityHome.remove(compilRulesEntity);
}

Obrigado!

Depende de algumas coisas Thiago…

Qual especificação você está utilizando (2.1? 3.0?)
Está usando CMP ou BMP?
Estamos falando de uma quantidade de registros pequena, média, grande ou monstruosa?

Ao manipular grandes massas de dados (falo de massas REALMENTE grandes) com EJBs devemos ter em mente que a performance não vai ser das melhores. Até que eu, que defendo EJB quase que como uma “religião”, aconselho utiliza-los com cuidado redobrado em caso de massas de dados realmente grandes. Bastante atenção no tunning do container também é necessário nesses casos.

Enfim, depende de várias coisas, mas se estivermos falando aqui de uma quantidade de registros média e de um banco de dados com uma performance razoável e bem configurado, você pode fazer com iteração sim.

Cuidado para que este processo não prejudique o desempenho de sua aplicação para as outras requisições. Faça testes, testes e mais testes.

[]s
Fabricio Braga
SCJP 1.5
http://www.fabriciobraga.com.br

A quantidade de dados é media e esta não é uma operação muito frequente. Estou usando EJB 2.1 do tipo CMP. Obrigado por sua resposta.