java - 是否有针对在 Spring Tool Suite(STS)中运行的 Web 应用程序的部署可交付成果(ear/war)?

标签 java spring spring-mvc spring-boot spring-tool-suite

我有一个使用 Spring boot 创建的 Web 应用程序,并且我正在使用 Spring Tool Suite(STS) 来开发它。如果我的理解是正确的,tomcat 内部嵌入在 STS 中,我可以在 Application.java 的帮助下从 STS 运行/调试应用程序。

现在我的疑问是,当我们通过运行 java 类作为“Spring Boot App”来运行应用程序时

  1. 部署可交付成果是什么?(ear/war)
  2. 可交付成果具体部署在哪里?我已经搜索过 在STS目录中到处都可以找到它
  3. 如果没有这样的事情,那么它是如何工作的?

这是有道理的还是我的理解有误?

最佳答案

您对 Spring Boot 的理解是错误的。

当您使用 Spring Boot 时,嵌入式 Tomcat 包含在您的应用程序中。

  1. Spring Boot 生成一个 .jar 文件。当应用程序启动时,Spring 知道如何为您引导 Tomcat 实例
  2. 如果您在 STS 上使用“运行”命令,则尚无可交付成果。 Application.java 上的 main 方法包含 Spring 运行应用程序所需的一切
  3. Spring Boot 是一个致力于创建独立 Spring 应用程序的项目。正如我在第一项中所说,Spring Boot 知道引导新 Tomcat 实例并运行应用程序所需的一切。使用 Spring Boot 时,您不需要应用程序服务器,Spring 通过嵌入 Tomcat/Jetty 或 Undertow 提供。 Tomcat 与您的代码一起位于您的应用程序内部,而不是外部应用程序服务器。

关于java - 是否有针对在 Spring Tool Suite(STS)中运行的 Web 应用程序的部署可交付成果(ear/war)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42976835/

相关文章:

java - 需要正则表达式帮助

java - Arraylist 中的子列表与 SQL 中的 limit

java - 在文件中保存数据的文件格式以及如何读取此数据 - Spring MVC

java - JSTL 和 Spring : Accessing methods with arguments

java - 如果从 jar 运行,带有嵌入式 jetty 的 Spring 应用程序找不到 webdefault.xml

java - 是否可以创建我自己的自定义注释来充当 Spring @Controller 注释?

java - 我应该如何重定向Spring框架中的第二页

java - Spring MVC(无法按正确的顺序实例化我的对象)

java - 将嵌套列表 List<List<Object>> 转换为 Set<Object>

java - Spring Project 如何显示语言