我在讀this post,它讓我有些困惑:在那篇文章中,提到了每個特定容器使用哪個註釋:JSF,CDI或EJB容器。JSF,CDI和EJB容器:應該使用哪些組合?
作爲一名初學者,我學習了JSF框架,並習慣了它的@ManagedBean註解和它的可選名稱參數,以便從JSF頁面引用bean,並且對CDI不太瞭解,並且我將EJB用於其強大的功能相反(甚至在閱讀這篇文章後,我仍然認爲EJB比CDI更強大,更有特色)。
所以.. JSF和CDI容器都有自己的註釋和方法來引用網頁上的bean,但EJB只有@Stateless(或@Stateful),因此不能在Web頁面上引用,這意味着JSF容器必須總是附加EJB(因爲我認爲混合EJB和CDI容器是荒謬的,因爲它們幾乎相似,但是對於這一點,我希望有人告訴我,如果我錯了)。
與JSF容器的問題是,它的
「還是不完整的,成熟的集裝箱」
如對文章中說,我知道關於它的最糟糕的是在Netbeans的警告消息旁邊@ManagedBean:
「從javax.faces.bean將在 接下來的JSF版本deprected包註釋CDI的有薦取而代之「。
(當然,這裏還有另外一種選擇包爲註釋:javax.annotation.ManagedBean,但我也不知道,如果我可以使用它,也沒有其是否具有在網頁上引用豆參數它是哪一個)
所以現在我開始懷疑未來還有關於我應該使用哪種容器組合。 CDI + EJB是未來嗎?
爲所有人歡呼。