語境爲什麼不直接使用CDI支持的bean(而不是SFSB)來保存會話信息?
簡單的Java EE 6(JBoss應用服務器7.1)CRUD Web應用程序,使用@Named支持豆,@SessionScope JSF頁面:
問題
爲什麼在CDI bean上存儲HTTP會話狀態會是一個壞主意?例如,將購物車物品存儲在那裏。
評論
SFSB都是爲了這個,由於其會話狀態,但我讀過,他們不容易在practice使用。另外我認爲,另一種選擇是HttpSession對象。
我也意識到他們擁有的鈍化/激活優勢。
uff ...你能給我更多關於擴展持久化上下文的信息嗎?爲SFSB分配一個@SessionScope ...使用CDI bean有什麼好處? – jacktrades
擴展持久化上下文是一個JPA上下文,它不綁定(作用域)到事務,而是綁定到有狀態會話bean的生命週期。有關更詳細的解釋,您可以查看「Pro JPA 2」一書。 –
所以,爲了簡單起見,如果不需要擴展持久性上下文,那麼我應該離開SFSB? – jacktrades