Boas Práticas de Desenvolvimento de Enterprise Bean
Utilize as diretrizes a seguir ao projetar e desenvolver beans corporativos.
- Utilize um bean de sessão sem estado para agir como o ponto de entrada para a lógica de negócio.
- Os beans de entidade devem utilizar persistência gerenciada por contêiner.
- Em um EJB (Enterprise JavaBeans) Versão 2.x e em ambientes de versão posterior,
utilize interfaces locais para melhorar a comunicação entre enterprise beans na mesma
Java Virtual Machine.
As chamadas locais evitam a sobrecarga de RMI/IIOP e utilizam semânticas de transmitir por referência em vez de transmitir por valor. Para cada chamada, os beans responsável pela chamada e chamado compartilham o estado dos argumentos. Beans EJB 2.x e posterior podem ter interface local e remota, porém é mais comum que tenham uma ou outra.
- Para se comunicar com clientes remotos, forneça interfaces remota e inicial remota. Para se comunicar com clientes locais como servlets, beans de entidade e beans orientados por mensagem, forneça interfaces local e inicial local.
Comandos em Batch para Container Managed Persistence
A partir do JDBC 2.0, objetos PreparedStatement podem manter uma lista de comandos que podem ser submetidos juntos como um batch. Em vez de várias permutas do banco de dados, existe apenas uma permuta do banco de dados para todos os pedidos de persistência em batch.
Você pode permitir o uso desse recurso para persistência gerenciada por contêiner EJB. Quando o fizer, o tempo de execução adiará ejbStore/ejbCreate/ejbRemove ou os pedidos de persistência equivalentes do banco de dados (insert/update/delete) até que sejam necessários. Isso pode ser no final da transação, ou quando é necessário um esvaziamento para localizadores relacionados a este tipo de EJB. Quando a operação de persistência finalmente acontece, o tempo de execução acumula os pedidos do banco de dados e utiliza a operação em batch PreparedStatement do JDBC para fazer uma única chamada JDBC para várias linhas da mesma operação.
O produto permite fazer as mesmas configurações utilizando ferramentas de montagem.
Criação Adiada para Persistência Gerenciada por Contêiner
Para CMP durante ejbCreate, o contêiner pode criar a representação da entidade no banco de dados imediatamente, ou adiá-la para um momento posterior.
É possível ativar esta opção a partir do lado CMP do EJB. Quando você escolhe essa opção, o tempo de execução adia ejbCreate, ou o pedido de persistência de banco de dados equivalente, até ser necessário. Isso pode ser no final da transação, ou quando é necessário um esvaziamento para localizadores relacionados a este tipo de EJB. Fazendo isso, pode-se reduzir duas idas e voltas para a entidade recém criada (insert e update) a uma (insert).
O produto permite fazer as mesmas configurações utilizando ferramentas de montagem.