2010-06-23 64 views

回答

2

當然。您應該儘可能使用無狀態(它們更快,消耗更少的內存,因爲它們不需要序列化和反序列化)並且僅在需要時纔有狀態。因此,擁有(例如)8個無狀態和2個有狀態的bean是完全可以的

8

你的問題很模糊,但是你似乎基本上會問是否可以使用無狀態或有狀態會話bean。

  • 無狀態會話bean(SLSB)確實易於使用。幾乎沒有什麼可配置的,並且它們非常適合公開服務。

  • 有狀態會話bean(SFSB)表面上類似於SLSB。但是,它們是有狀態的,這使得它們的編程模型不同,而且更難於使用。例如,您需要配置一個與您的負載匹配的池大小,設置超時參數,並且不要忘記正確處理它們。除非您確切知道爲什麼會使用它們而不是另一種較輕的方法(例如HttpSession或數據庫),並且只有在您具有良好的EJB模型命令的情況下,人們通常會對它提出建議。更多關於Stateful EJBs in web app的信息。

但是SLSB和SFSB當然可以在應用程序中一起使用。這項技術自十年以來就已有大量的信息可供使用。然而,鼓勵儘可能使您的設計成爲無狀態。