我在某处读到“ Spring框架由于其POJO实现而轻巧”。 但是“ POJO实现”是什么意思?
答案 0 :(得分:3)
Spring的重要原则之一是它希望帮助您创建loosely coupled软件-这意味着您的软件组件之间应该没有不必要的依赖关系。
其中一种方法是允许您使用POJOs(普通的旧Java对象)-只是简单的Java类,不需要扩展类或从Spring Framework实现接口,并且不需要依赖框架其他部分。
由于这些POJO类对框架没有任何依赖关系,因此您可以在不使用Spring框架的其他应用程序中轻松地重用它们。
它也有助于了解Spring框架的历史。许多年前,当Java EE(或当时称为J2EE)是新的时,很难创建一个EJB。您必须实现特殊的J2EE接口并实现特殊的生命周期方法。这使其难以使用。为此创建了Spring框架。与J2EE相比,您可以在简单的POJO类中实现业务逻辑,而无需J2EE所需的复杂样板代码。
答案 1 :(得分:1)
我认为这句话不是真的“ Spring框架由于其POJO实现而轻巧”。我想你看错了。轻量级和POJO实现是2个不相关的概念(我认为Spring不是轻量级的)。 POJO是Plain old Java对象的缩写,以pojo方式实现的应用程序意味着逻辑驻留在POJO中,几乎没有样板代码,因此非常易于移植。 PoJo应用程序可以从Spring移植到另一个容器,而无需做任何修改。
我认为原始消息应该是:“由于其POJO实现,Spring应用程序是可移植的。”
答案 2 :(得分:0)
弹簧之所以轻巧,是因为其原因很多,原因之一是它的组件是松散耦合的。
例如,您可以在不使用Spring MVC的情况下使用Spring JDBC。
将其与例如Java EE进行比较。如果要运行Java EE应用程序,则不能仅创建一个可以独立运行的小型应用程序。
您将需要Java EE应用程序服务器来运行您的应用程序,例如Glassfish,WebLogic或WebSphere。
大多数应用程序服务器是大型而复杂的软件,安装和配置并非易事。 Spring不需要这样的东西。
例如,您可以在任何小型独立程序中使用Spring依赖注入
还有其他一些好的答案,可能有助于您更详细地了解
What makes the Spring framework a lightweight container?
https://dzone.com/articles/why-spring-framework-is-popular
https://coderanch.com/t/639696/frameworks/Spring-called-Lightweight-framework