当前位置: 首页 > 知识库问答 >
问题:

独立servlet容器中的Spring Boot应用程序war

申博厚
2023-03-14

关于从Spring Boot应用程序构建war并在独立的servlet容器中运行它的一般问题。我所看到的文档似乎与堆栈溢出的示例不一致。

这里的答案显示了我几个月前读到的这样做的方式。我在这里读到了这个,但是指南似乎已经改变了,失去了实际的示例应用程序。

这里的“configure”方法引用了主要的Spring Bootapplication.class。

public class WebInitializer extends SpringBootServletInitializer {   

   @Override
   protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(Application.class);
    }  
}
public class BootStrap extends SpringBootServletInitializer {

   public static void main(String[] args) {
      SpringApplication.run(BootStrap.class, args);
   }

   @Override
   protected SpringApplicationBuilder configure(
          SpringApplicationBuilder application) {
      return application.sources(BootStrap.class);
   }   
}
 public class WebConfig extends WebMvcConfigurerAdapter {.........

共有1个答案

宦瀚
2023-03-14

让主应用程序类扩展SpringBootServletInitializer(Bootstrap)或使用单独的类(WebInitializer)取决于个人喜好。我更喜欢采用bootstrap方法,但它们的工作方式相同;选择你喜欢的哪一个。

如果您只打算将应用程序部署到独立的servlet容器中,那么您不需要main方法。如果希望将应用程序作为可执行war运行(java-jar my-app.war),或者希望能够直接在IDE中运行它,即无需IDE将其部署到servlet容器中,则使用main方法。

spring-boot-sample-tradition演示如何使用web.xml引导Spring Boot应用程序。一般来说,这不是一个推荐的方法,除非您被困在Servlet2.5容器上。WebMVCConfigurerAdapter的使用与WAR打包无关。查看它的web.xml以了解相关的配置部分。

 类似资料:
  • 问题内容: 与在内置的Web服务器上运行独立的Java应用程序并在反向代理后面运行相比,构建一个小型的Java Web应用程序以在Servlet容器(如Tomcat)中运行的优势是什么? 我已经使用Java大约一年了。我注意到启动Tomcat需要时间,并且由于类加载器问题,并非总是可以进行热重新部署。Servlet API在我看来有些令人费解,尤其是从配置和RESTful设计的角度来看(实际上并没

  • 现在假设我们想要使用 Spark API 写一个独立的应用程序。我们将通过使用 Scala(用 SBT),Java(用 Maven) 和 Python 写一个简单的应用程序来学习。 我们用 Scala 创建一个非常简单的 Spark 应用程序。如此简单,事实上它的名字叫 SimpleApp.scala: /* SimpleApp.scala */ import org.apache.spark.S

  • 问题内容: 我正在考虑开发由两部分组成的桌面应用程序: 用户界面(例如Java应用) 后端Node.js服务器 2个部分通过插座连接。不要问为什么我知道这很奇怪。 我将希望能够为客户提供带有安装程序的应用程序。我不希望用户必须自己安装Node.js。 有没有一种方法可以独立安装Node.js服务器,即无需在系统上全局安装Node.js。 对于任何(Windows,Linux,Mac OS X …)

  • 问题内容: 我正在寻找在 独立的(桌面/秋千)* 应用程序中使用 Spring的 示例或教程,我进行了很多搜索,但找不到有用的东西,所有示例和教程均适用于Web应用程序,请告知。 * 问题答案: 使用maven创建独立应用程序,如下所示: 使用Maven创建独立的应用程序 将applicationContext放在类路径中,并按如下所示将其加载到主类中: 在此处查看全文: http://www.d

  • 有用 Python 编写的流行服务器来容纳 WSGI 应用并提供 HTTP 服务。这些服务器在运行 时是独立的:你可以从你的 web 服务器设置到它的代理。如果你遇见问题,请注意 代理设置 一节的内容。 Gunicorn Gunicorn ‘Green Unicorn’ 是一个给 UNIX 用的 WSGI HTTP 服务器。这是一个从 Ruby 的 Unicorn 项目移植的 pre-fork w

  • 问题内容: 我正在尝试制作一个第三方的简单的独立/摇摆应用程序,该应用程序使用hibernate模式在另一个应用程序的数据库上进行连接,所以这是我所做的: 1-使用的jar: 2- hibernate.cfg.xml(位于src文件夹中): 3- SessionFactoryHelper: 4-样本查询: 运行该应用程序时,出现以下异常: 谁能告诉我我的配置出了什么问题? 问题答案: 这个问题与H