Duvidas e confusoes com os frameworks (EJB, Seam, Spring...)
3 respostas
igor_ks
Bom dia a todos
estou iniciando agora com Java… e estou vou iniciar um projeto aqui do trampo com EJB + JBoss Seam3, estava estudando ambas tecnologias e apareceu uma duvida…
ambos possuem injecao de dependencias… quando que uso um @EJB ao inves de @In (Seam3), qual a diferenca entre eles?
quando uso um @Statefull (EJB) ou quando uso @Scope(ScopeType.SESSION) do Seam3
Vejo que dos frameworks, eles possuem algumas funcionalidades iguais (me corrijam se eu estiver errado)… isso me acaba deixando bastante confuso
Mesma duvida pra @Resource do javax.annotation e @Autowired do Spring
ambos possuem injecao de dependencias… quando que uso um @EJB ao inves de @In (Seam3), qual a diferenca entre eles?
quando uso um @Statefull (EJB) ou quando uso @Scope(ScopeType.SESSION) do Seam3
Quando você está em um bean CDI, você pode utilizar tanto @EJB como @Inject. Quando você usa @Statefull juntamente com o @SessionScoped , depende de quem está chamando o método dessa tua classe, se for outro EJB chamando, este usará o ciclo de vida do EJB, caso seja um requisição de uma página web (EJB não conhece requisições WEB), este terá o ciclo de vida definido pelo Scope , no teu caso Session.
Sobre Spring eu não posso te ajudar, pois não conheço.
Abraços.
igor_ks
Hummm, blz!
Me esclareceu agora…
então depende de suas relacoes com outras classes…
Obrigado por me corrigir de que @In é do Seam2
Dei uma estudada sobre o CDI, mas bem por cima