java - jsf bean 和 ejb bean 的区别

标签 java jsf jakarta-ee ejb

<分区>

我需要一些说明。我知道如何使用 JSF 及其相应的 session bean,但我对 EJB 感到困惑。 EJB 引入的 bean 和 JSF 使用的 session bean 之间有什么区别(对于 ejb,我知道无状态/完整 session bean 和实体 bean、实体管理器等)。我只是不明白何时使用 EJB 以及何时使用 jsf bean。除了实体 bean 之外,ejb 有状态/无 session bean 看起来都类似于 jsf session bean。我读过有关将 ejb 注入(inject) jsf 的信息,但为什么不将 ejb 与 jsf bean 结合使用呢?我希望你能理解我的困惑。谢谢你。

最佳答案

首先,我们需要了解JSFEJB bean的区别。

  1. JSF beansPOJO类,用于读取JSF的组件值。 JSF 中有两种类型的 bean:

    • Managed bean 是关于如何创建和初始化 java bean 的。如您所知,JSF 使用惰性初始化模型。这意味着特定作用域中的 bean 不是在作用域启动时创建和初始化,而是按需,即第一次需要 bean 时.

    • Backing bean 是关于特定托管 bean 扮演的角色。这是位于页面上的组件的服务器端表示的角色。通常,支持 beans 有一个请求范围,但这不是限制。

  2. EJB Bean 是服务器端组件,它封装了应用程序的业务逻辑。业务逻辑是实现应用目的的代码。

session bean主要分为三种类型:

1.有状态 session bean

2.无状态 session bean

3.单例 session bean(ejb 3.1)

关于java - jsf bean 和 ejb bean 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4295303/

相关文章:

java - 将 JFreeChart 图表保存到特定目录

JavaCC:嵌套 for 循环

java - 为什么java链表实现使用接口(interface)deque?

jsf - 如何在 JSF 中返回状态消息?

javascript - 通过 bean 变量在 JSF 页面中包含外部 javascript?

java - 在 Java 企业应用程序中重新映射 JNDI 资源

java - 如何在 j2ee 应用程序中做 pdf 数字签名

java - Spring 框架 4.0 和 Spring security 3.2.4 上的 Spring Security SAML 扩展

Java - repaint() 方法被调用一次,然后它不显示任何内容

java - 如何在执行此 f :event listener 之前设置 bean 属性