我正在阅读 What components are MVC in JSF MVC framework?
In the big architectural picture, your own JSF code is the V:
M - Business domain/Service layer (e.g. EJB/JPA/DAO)
V - Your JSF code
C - FacesServletIn the developer picture, the architectural V is in turn dividable as below:
M - Entity
V - Facelets/JSP page
C - Managed bean
在大写情况下,JavaBean 是一个模型。
但是在小写情况下,托管 bean 变成了 Controller ?
它们不是一回事吗?有什么区别?
最佳答案
简答:“托管 Bean”是 JSF 托管 bean 的传统简称。它是由 JSF 管理的 Java Bean。
长一个:
bean 通常是由容器管理的 POJO(普通旧 java 对象)。
Managed 在这里意味着创建/销毁,实例的数量,它们的范围以及一些特定方法的调用都由容器处理。
容器一般由底层服务器提供。在 Java EE 中,您有不同的容器(CDI、EJB、Web 等...)
JSF Managed Bean 是由 JSF 容器管理的 bean,EJB 由 EJB 容器管理,Servlet/过滤器由 servlet 容器管理,JPA 实体由 EntityManager 等管理
例如,在 tomcat 服务器上,您只有 web(servlet)容器而没有 EJB 容器。如果您使用 JSF(您必须提供关联的依赖项),您也将拥有托管 bean。
关于jsf - JavaBean 和 ManagedBean 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16978886/