在我的web應用程序中,我有一個由幾個jsf-viewscoped和一些requestcoped bean組成的表示層。通常我只想在這些表現邏輯中,所以只要有超出表示邏輯的任務,我就使用另一個Bean或一個EJB。所以在一些viewcoped Beans中,我注入了一個EJB。我現在的問題如下:我是否應避免通過創建另一個(例如應用程序作用域)bean來將EJB直接注入用於表示的Bean中的情況,該Bean只將方法調用委派給相應的EJB? 並且:何時注入的EJB已初始化?如果它在初始化bean的時候被初始化了,那麼這意味着對於我的應用程序的每個訪問者,總是有一個EJB保留的?我不認爲這是事實,但EJB只在調用其中一個方法時才使用。但是,我應該如何正確分離業務層和表示層?將EJB注入到viewcoped Bean中有害嗎?
1
A
回答
2
將EJB注入到視圖範圍的支持bean中是很常見的,也是最佳實踐。
(視圖範圍的)backing bean負責處理與視圖有關的任何問題,並委託EJB bean進行業務邏輯。
通常(但不一定)視圖bean從EJB bean的PostConstruct中加載數據,然後在回發過程中保留這些數據。這對於性能和一致性來說可能是非常人性化的。
相關問題
- 1. 在@EJB注入中沒有發現Bean
- 2. 使用@EJB將實體Bean注入EJB Bean
- 3. 將JSF託管Bean注入EJB
- 4. 託管bean EJB注入
- 5. JSF託管bean EJB注入
- 6. Vaadin 7 + EJB集成(如何將有狀態bean注入到servlet)
- 7. 注入ejb到託管bean導致BeanInstantiationException
- 8. 注入EJB 3到Spring Bean的
- 9. 如何將不帶接口的EJB注入到Spring bean中?
- 10. 將注入的CDI bean序列化爲有狀態的EJB
- 11. EJB注入和EJB池
- 12. @從EJB項目注入bean給出UnsatisfiedResolutionException
- 13. 如何將EJB注入到java類中
- 14. 將EJB和CDI注入到Spring-Handler中
- 15. 將遠程JMS @Resource注入到EJB中
- 16. 注入EJB
- 17. EntityManager注入在EJB 2.1會話bean中爲空EJB3實體Bean
- 18. 在上下文中將客戶端參數注入ejb bean
- 19. EntityManager應該注入EJB嗎?
- 20. @EJB注入到一個Spring bean在JBoss中
- 21. 在jsf中,我可以將sessioncope bean注入到actionlistener中嗎?
- 22. 注入ejb實例到servlet中,@EJB注入空 - JBoss6
- 23. 將EJB注入Seam組件
- 24. 通過@EJB註釋注入遠程EJB
- 25. Spring Boot:將Bean注入到HttpServlet中
- 26. 將實體注入到ViewScoped Bean中
- 27. 未能將@Service bean注入到QuartzJobBean中
- 28. Java EE,將一個EJB注入到另一個EJB中
- 29. 將EJB添加到JNDI中,但無法使用@EJB注入
- 30. 將BeanFactory注入Bean
啊好,所以我覺得我在那裏出了點問題。那麼可以說,viewscoped bean不屬於表示層,而是屬於應用層?表示層將由jsf頁面組成? – nico1510
是的,表示層只包含Facelets。檢查[瞭解JSF作爲MVC框架](http://stackoverflow.com/questions/10111387/understanding-jsf-as-a-mvc-framework)。問候, –
序列化呢?當我在像這樣的viewcoped bean中注入一個EJB時,我得到序列化錯誤... – salihcenap