Há algum tempo acompanhei uma discução aqui no GUJ, porém não a achei mais. Então lanço uma dúvida minha: usar DAO/Repositórios como EJB local ou como uma classe normal?
Há duas abordagem que eu conheço atualmente:
usar as DAOs/repositórios como EJB local para injetar o data-source ou entity-manager
usar uma dao-factory/repository-factory como EJB local e a partir dela injetar o datasource ou entity-manager instanciando a classe DAO/repositório na hora.
Particularmente não vejo um problema em usar as DAOs/repositórios como EJBs, já que o controle do container é bem inteligente para gerenciar o ciclo de vida dos mesmos.
Enfim, qual a abordagem que vocês têm usado? O que vocês acham sobre isso?
[quote=garcia-jj]Há algum tempo acompanhei uma discução aqui no GUJ, porém não a achei mais. Então lanço uma dúvida minha: usar DAO/Repositórios como EJB local ou como uma classe normal?
Há duas abordagem que eu conheço atualmente:
usar as DAOs/repositórios como EJB local para injetar o data-source ou entity-manager
usar uma dao-factory/repository-factory como EJB local e a partir dela injetar o datasource ou entity-manager instanciando a classe DAO/repositório na hora.
Particularmente não vejo um problema em usar as DAOs/repositórios como EJBs, já que o controle do container é bem inteligente para gerenciar o ciclo de vida dos mesmos.
Enfim, qual a abordagem que vocês têm usado? O que vocês acham sobre isso?[/quote]
Se o seu projeto ja esta usando um container, enjoy it!!
Não vejo problema nenhum em usar a injeção de dependecia e o controle de transações do container. O importante para mim é o SoC, e não se o objeto é um EBJ ou não.