【问题标题】:Spring and EJB integrationSpring 和 EJB 集成
【发布时间】:2014-05-24 06:15:19
【问题描述】:
在我的项目中,我们使用 JSF 和 Spring WS(Web 层)、EJB 3.0(服务层)和 JPA(集成层)。我们已经在 Spring 容器中暴露了 EJB。
所有技术都与 Spring 一起使用。因此,Spring 用于将所有层绑定在一起。因此,Spring 对于所有架构层都是通用的。
我了解到,EJB 提供的许多特性在 Spring 中也可用。我们不能用 Spring 替换 EJB 吗?为什么,EJB 和 Spring 是一起使用的。
我想了解,使用这种架构有什么好处。
【问题讨论】:
标签:
spring
ejb
integration
【解决方案1】:
Spring 是 EJB 的替代方案。通常 EJB 和 Spring 不会一起使用,除非它是已经基于 EJB 开发的遗留应用程序,并且 Spring 稍后被连接以支持依赖注入和其他框架优势。
EJB 是一个重量级容器,需要 JBoss、WebSphere 或 Weblogic 等应用容器。
Spring 是一个非常轻量级的容器,可用于 Tomcat 等 Web 容器,甚至可用于独立应用程序。它还支持从前端到后端的许多模块。
如果有机会,你应该考虑在服务层用 Spring bean 替换 EJB。
【解决方案2】:
这是否意味着 Spring 提供了 EJB 3.0 中可用的所有功能。集群和 EJB 的所有其他特性也可以从 Spring 中实现。