簡體   English   中英

使用Spring Boot構建基本Web應用程序的不同方法?

[英]Different approaches to build basic web app with spring boot?

我試圖了解如何使用Spring Boot構建“基本” Web應用程序。 我在線上找到了不同的文章,以各種不同的方式來做它:

  1. 這篇文章
    • 成為主班
      • 使用@SpringBootApplication
      • extends SpringBootServletInitializer
      • main()調用SpringApplication.run() main()
    • 最后創建@Controller和JSP頁面
  2. 文章確實與上述基本相同,但不使其主呼叫extends SpringBootServletInitializer
  3. 文章也是一樣的第一個,用它使得它的主類唯一的區別implements CommandLineRunner

我的問題:

  1. 方法正確嗎?
  2. 它們之間有什么區別?
  3. 第1條中是否不需要extends SpringBootServletInitializer
  4. 我讀到CommandLineRunner是構建非Web應用程序所必需的。 那么第3條中的示例如何工作?

方法正確嗎?

是。

它們之間有什么區別?

#1擴展了SpringBootServletInitializer因此Web應用程序可以作為.war文件部署到獨立的Servlet容器中,而不是使用嵌入式Servlet容器從命令行運行它。

#2不需要該演示的可選功能。

#3使用CommandLineRunner其演示所需的測試數據。

extends SpringBootServletInitializer了文章1中的extends SpringBootServletInitializer不必要?

是。 僅當您希望能夠作為.war文件進行部署時才需要。

我讀到CommandLineRunner是構建非Web應用程序所必需的。 那么第3條中的示例如何工作?

非Web應用程序可能需要使用它,但這並不意味着它對於Web應用程序無效。

非Web應用程序(可能)需要它作為運行主要非Web應用程序邏輯的入口點。

Web應用程序不需要它,除非它們需要額外的初始化邏輯,因為嵌入式servlet容器由SpringApplication.run()自動啟動。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM