JavaEE 6@javax.notation.ManagedBean與@javax.Inject.Nmad vs@javax.faces.ManagedBean我覺(jué)得JavaEE 6規(guī)范有點(diǎn)混亂。有幾組注釋。我們有javax.ejb注釋,如@Stateful和@Stateless用于創(chuàng)建EJB。還有一個(gè)@javax.annotation.ManagedBean若要?jiǎng)?chuàng)建托管bean,請(qǐng)執(zhí)行以下操作。中有注釋javax.enterprise.context喜歡@SessionScoped和@RequestScoped.更有甚者還有@ManagedBean和@SessionScoped/@RequestScoped注釋javax.faces.bean包裹。為了使事件變得更復(fù)雜,有一個(gè)包javax.inject帶著@Named注釋有人能描述一下他們之間的關(guān)系嗎?我可以在哪里使用@EJB, @Inject或@ManagedPropery注射其他豆子?
3 回答

慕工程0101907
TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊
是的,這可能會(huì)讓人困惑。
對(duì)一些人來(lái)說(shuō)EHM歷史原因是JSF和CDI對(duì)作用域使用相同的注釋,但來(lái)自不同的包。
你可能是在猜測(cè)javax.faces.bean
來(lái)自JSF規(guī)范,與CDI無(wú)關(guān)。除非你有很好的理由這樣做,否則不要使用它們。也不要將它們與cdi注釋混在一起。javax.ejb
..這將產(chǎn)生一個(gè)無(wú)窮無(wú)盡的錯(cuò)誤和微妙的異常列表。
添加回答
舉報(bào)
0/150
提交
取消