Java Spring框架中类似EJB的功能?
几年前我开始从事企业Java开发,似乎有了很多进步/变化;因此,我试图更多地了解EJB的快速发展历史以及导致Spring框架开发的痛点。现在,到目前为止,我知道EJB世界很容易,也就是说,我们不需要扩展或实现任何特定于框架的东西 我很难理解Spring框架中的哪些功能充当EJB 当我们在纯EJB中进行开发时,我们可以: JSP/servlet->EJB和EJB具有业务逻辑,到EJB的服务由EJB容器提供。这对我来说很清楚(或者我认为我的理解是正确的) 现在,问题来了;当我们使用纯Spring框架时,我们用来封装业务逻辑的“东西”是什么?我了解到,在SpringMVC框架中,我们可以使用Java Spring框架中类似EJB的功能?,java,spring,spring-mvc,jakarta-ee,ejb,Java,Spring,Spring Mvc,Jakarta Ee,Ejb,几年前我开始从事企业Java开发,似乎有了很多进步/变化;因此,我试图更多地了解EJB的快速发展历史以及导致Spring框架开发的痛点。现在,到目前为止,我知道EJB世界很容易,也就是说,我们不需要扩展或实现任何特定于框架的东西 我很难理解Spring框架中的哪些功能充当EJB 当我们在纯EJB中进行开发时,我们可以: JSP/servlet->EJB和EJB具有业务逻辑,到EJB的服务由EJB容器提供。这对我来说很清楚(或者我认为我的理解是正确的) 现在,问题来了;当我们使用纯Spring框架
@Service
注释来处理服务/业务层的bean;但这也是一个单一的框架“SpringMVC”;EJB可以独立存在,但在Spring中什么是等价的呢?如何在Spring框架中编写只包含业务逻辑的代码(EJB的方式)
有人能帮我理解吗?我确实读过,但我的疑虑仍然萦绕在脑海中。Spring MVC涵盖了。。。WebMVC是框架的一部分。您可以完美地开发基于Spring的事务性业务服务,而无需使用SpringMVC作为表示层。这就是它被创建的最初原因。如果使用Spring及其POJO模型,则不需要EJB。业务逻辑将出现在您选择的服务或POJO中。它与EJB模型不同。更简单。如果您使用SpringBoot,您甚至不需要JavaEE应用服务器。您可以使用可执行JAR在JRE上运行。您可以使用公共方法编写一个类,并使用
@Service
(和@Transactional
,如果您希望是事务性的)对其进行注释(按约定)。这与编写EJB没有什么不同,在EJB中,您可以使用@无状态的注释执行相同的操作。我说你用的是POJO,不是EJB。您将逻辑放在它所属的服务中。您可以选择将它们部署为SOAP、REST或控制器使用的基于接口的POJO。您的错误在于您认为@Service
是来自Spring MVC的注释。不是。Spring MVC涵盖了。。。WebMVC是框架的一部分。您可以完美地开发基于Spring的事务性业务服务,而无需使用SpringMVC作为表示层。这就是它被创建的最初原因。如果使用Spring及其POJO模型,则不需要EJB。业务逻辑将出现在您选择的服务或POJO中。它与EJB模型不同。更简单。如果您使用SpringBoot,您甚至不需要JavaEE应用服务器。您可以使用可执行JAR在JRE上运行。您可以使用公共方法编写一个类,并使用@Service
(和@Transactional
,如果您希望是事务性的)对其进行注释(按约定)。这与编写EJB没有什么不同,在EJB中,您可以使用@无状态的注释执行相同的操作。我说你用的是POJO,不是EJB。您将逻辑放在它所属的服务中。您可以选择将它们部署为SOAP、REST或控制器使用的基于接口的POJO。您的错误在于您认为@Service
是来自Spring MVC的注释。不是。