Spring Boot 对于 Java Web 应用程序都有哪些缺点? [关闭]

Posted

技术标签:

【中文标题】Spring Boot 对于 Java Web 应用程序都有哪些缺点? [关闭]【英文标题】:What are the disadvantages of Spring Boot for Java web applications? [closed]Spring Boot 对于 Java Web 应用程序有哪些缺点? [关闭] 【发布时间】:2016-12-02 15:33:45 【问题描述】:

[这需要投票才能重新回答。]

Spring boot 被认为是创建新 Spring 应用程序时的默认设置,因为它使设置更容易并自动连接常见的依赖项。

我还没有看到以广告方式使用弹簧靴的行业。

简而言之,在采用 Spring Boot 作为事实上的 Spring 走向时,开发人员面临哪些缺点?

Spring Boot question 的优点显示了我同意有很多优点,但相信应该有更全面的看法。

一个非基于意见的例子是:

Spring boot 可能会因未使用的依赖项而不必要地增加部署二进制文件的大小。

无法轻松自定义日志记录,如 here 所示。

【问题讨论】:

这不是应该在这里的问题,因为这是关于讨论的问题。但在我看来,有一个很大的优势和劣势。使用 Spring Boot,您不必配置很多东西。所以它更容易,但另一方面你正在失去控制。但对于微服务架构来说,它真的很酷;) 我试图表达这一点,以不鼓励讨论,因为我链接的优势问题确实如此。那里的答案被认为是积极的,在这里我想看到简明的缺点而不是意见。 【参考方案1】:

这是一个非常基于意见的问题,但我相信您可能遇到的最大缺点是使用它或 Spring,根本不了解它给您或您的项目带来了什么价值。它可能完全不符合您的要求,并且您可能会在某个时候自行配置所有内容。

让我在question 中评论您喜欢的要点。

创建独立的 Spring 应用程序 => 你可以创建独立的 java 应用程序吗?为什么首先选择 Spring? 直接嵌入 Tomcat、Jetty 或 Undertow(无需部署 WAR 文件)=> 如果您必须构建 war 怎么办?少量配置就可以解决问题,但这并不是什么主要优势。 提供自以为是的“入门”POM 来简化您的 Maven 配置 => 如果您有许多遗留的 spring 模块怎么办?如果需要修补怎么办? 尽可能自动配置 Spring => 如果此配置完全不符合您的要求怎么办? 提供生产就绪功能,例如指标、健康检查和外部化配置 => 对您来说足够了吗?这是完全错误的,因为您需要更复杂的东西吗?没用,因为你根本不需要这个?

【讨论】:

感谢您的提问,非常感谢 Grzegorz 的明确回答。我认为使用 JEE 方法,您绝对可以控制您的应用程序依赖项/我认为您不能使用 Spring。控制您的依赖关系意味着您可以控制您的应用程序。 想补充一点,我在 2 个月前阅读了这篇文章,并决定使用 SpringBoot。经过 2 个月的努力,我们真的觉得它很棒,并且做了很多我们的小团队本来可以负担的事情。基本上,从尝试设想所有可能组合的经验丰富的开发人员的角度来看,您的答案可能是正确的。但是对于小型团队、新开发人员或需要快速构建应用程序的需求,我认为 SpringBoot 是一个了不起的选择。随着时间的推移将分享更多。希望这对某人有用。

以上是关于Spring Boot 对于 Java Web 应用程序都有哪些缺点? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot . 2 -- 用Spring Boot 创建一个Java Web 应用

如何在 Eclipse 本身中运行 Spring Boot Web 应用程序?

018-Spring Boot Starter开发

Spring Boot 部署浅析(jar or war)

Spring Boot Soap Web 服务(Java)——代码优先?

Spring Boot Soap Web-Service(Java) - 代码优先?