为什么大公司更喜欢Spring而不是Java EE?[已关闭]

2022-09-02 03:19:29

在寻找工作的同时,我参加了一些在金融领域工作的公司的面试。每家公司都使用Spring框架作为开发的主要框架。几乎在任何地方,我都被告知'我们需要经过验证的稳定技术,这就是我们使用Spring的原因。

我想知道,因为我无法理解,为什么Spring比Java EE更受欢迎和“更安全”(例如,Spring MVC比JSF使用得更多,而两者都提供几乎相同的功能)?

原生 Java EE 功能怎么可能不如第三库稳定呢?


答案 1

一些原因:

  1. Spring已经存在:J2EE很丑陋(没有依赖注入,没有对配置的转换,以及来自EJB2的大量恐慌,哎呀)。Java EE从Spring中“偷走”了所有好主意,实际上它比以前的版本更轻,更容易。但现在,每个人都已经在使用Spring了。这意味着大量的生产代码,许多经过良好测试的产品等等。最后,为什么英国/美国的人使用英语单位?(改变成本巨大)

  2. Spring更轻:你不需要一个繁重的Java EE应用程序服务器,你可以在像Tomcat这样的Web容器中部署你的应用程序。

  3. Spring提供了大量Java EE标准所不具备的功能,例如Spring Batch或Spring Integration。你可以将Spring特性与Java EE标准一起使用,但是应该假设Spring与Spring配合得更好,不是吗?

  4. 面向Spring Aspect的编程比Java EE拦截器更灵活,更强大。您可以将第三方AOP与Java EE一起使用,但您可以从Spring获得这种开箱即用的功能。

  5. 弹簧移动得更快。Spring可以经常和更快地发布,因为它不是标准,只有一个供应商。因此,不需要JCP投票,批准等。对市场需求的反应要快得多。一些当前的例子:云,移动,社交计算。

具有讽刺意味的是,我从以下方面“得到了”很多想法:http://www.kai-waehner.de/blog/2011/11/21/why-i-will-use-java-ee-jee-and-not-j2ee-instead-of-spring-in-new-enterprise-java-projects-in-2012/


答案 2

在寻找工作的同时,我参加了一些在金融领域工作的公司的面试。每家公司都使用Spring框架作为开发的主要框架。几乎在任何地方,我都被告知'我们需要经过验证的稳定技术,这就是我们使用Spring的原因。

我在金融领域工作了几年 - 所以我可以从我的经验中说话。

我认识的许多金融服务提供商在2006-2008年左右对其企业软件堆栈进行了重大升级,当时在几个无法维护和编写不佳的EJB项目之后,人们对EJB的幻灭达到了顶峰。因此,为了升级他们的系统并吸引开发人员,他们开始在Spring和Hibernate中重新实现他们的东西,这也是他们以最先进的框架(当时是Spring,Hibernate和Wicket)启动新项目的合乎逻辑的步骤。

但从那时起,金融危机爆发了,没有多少金融服务公司想到在新开发上投入这么多钱,除非它非常关键。大多数人并不关心Java EE 6或7是否被启动,一些旧的论点不再有效。

所以他们愿意相信他们拥有的更安全更快等(这可能是也可能不是真的)


推荐