猿问

JavaEE 6@javax.notation.ManagedBean与@javax.Injec

JavaEE 6@javax.notation.ManagedBean与@javax.Inject.Nmad vs@javax.faces.ManagedBean

我觉得JavaEE 6规范有点混乱。有几组注释。

我们有javax.ejb注释,如@Stateful@Stateless用于创建EJB。

还有一个@javax.annotation.ManagedBean若要创建托管bean,请执行以下操作。

中有注释javax.enterprise.context喜欢@SessionScoped@RequestScoped.

更有甚者还有@ManagedBean@SessionScoped/@RequestScoped注释javax.faces.bean包裹。

为了使事件变得更复杂,有一个包javax.inject带着@Named注释

有人能描述一下他们之间的关系吗?

我可以在哪里使用@EJB@Inject@ManagedPropery注射其他豆子?


HUX布斯
浏览 229回答 3
3回答

慕娘9325324

是的,这可能会让人困惑。对一些人来说EHM历史原因是JSF和CDI对作用域使用相同的注释,但来自不同的包。你可能是在猜测javax.faces.bean来自JSF规范,与CDI无关。除非你有很好的理由这样做,否则不要使用它们。也不要将它们与cdi注释混在一起。javax.ejb..这将产生一个无穷无尽的错误和微妙的异常列表。我通常建议你浏览前几页(甚至更多)的优秀页面。焊接文件..这将使您走上JavaEE 6的轨道。可以在这里发表更多的问题。
随时随地看视频慕课网APP

相关分类

Java
我要回答