如何在Spring Boot中配置主類

如何在Spring Boot中選擇不同的主類運行

我們在使用SpringBoot時,都會在某個類的main方法中寫下SpringApplication.run(Classname.class, args)從而引導spring應用程序作為獨立的應用程序運行。它創建一個適當的應用上下文實例並加載beans。

默認情況下,如果沒有明確指定主類,Spring將在編譯時在類路徑中搜索一個主類,如果找不到或找不到多個主類,將無法啟動。

讓我們看看如何在Spring Boot中配置一個主類。

<code>
1.  `@SpringBootApplication`

2.  `public  class  SpringBootMainClassApplication  {`

3.  `public  static  void main(String[] args)  {`

4.  `SpringApplication.run(SpringBootMainClassApplication.class, args);`

5.  `}`

6.  `}`

/<code>

這是我們的應用程序的主要類,Spring Boot應用程序將在其中執行。現在讓我們創建一個controller 來打開應用程序的主頁。

<code>
1.  `@Controller`

2.  `public  class  HomeController  {`

3.  `@RequestMapping("/")`

4.  `@ResponseBody`

5.  `public  String goToHomePage ()  {`

6.  `return  "

This is the Home page

";` 7. `}` 8. `}` /<code>

POM.xml文件我們省略不看,用缺省的即可。

現在,使用運行應用程序時mvn spring-boot:run 命令,Spring Boot應用程序將在端口8080中啟動。

如何在Spring Boot中配置主類

現在,讓我們在應用程序中創建一個新的Spring Main類。創建這個類後,我們將有兩個新的主類都擁有public static void main(String args[])方法:

如何在Spring Boot中配置主類

正如我們從Java基礎知識中所知道的,在一個Java應用程序中我們只能有一個主要的方法。當我們試圖構建這個應用程序時,它會拋出如下異常:

如何在Spring Boot中配置主類

我們如何解決這個問題?

當應用程序中聲明瞭多個主類時,Spring Boot允許我們在配置中定義主類。當我們使用MAVEN構建時,我們必須為Spring Boot配置POM.xml來識別應用程序的主要類。

以下是POM.xml文件中需要的更改:

如何在Spring Boot中配置主類


這樣我們可以選擇任何一個主類作為我們SpringBoot程序的啟動主類。

使用命令行界面配置主類

我們還可以通過命令行界面指定一個主類。

Spring Boot的 org.springframework.boot.loader.PropertiesLauncher中 附帶了一個JVM參數,允許我們指定運行的主類是哪一個:

如何在Spring Boot中配置主類

結論

因此有多種方法可以指定Spring Boot應用程序的入口點,利用好了,可以在不同的環境下運行我們同一個SpringBoot程序的不同版本。


最後,給大家分享一份通往架構師的進階寶典《Java核心知識點整理.pdf》,全文覆蓋了JVM、鎖、高併發、反射、Spring原理、微服務、Zookeeper、數據庫、數據結構等等這些內容。

如何在Spring Boot中配置主類

獲取方式:後臺私信回覆【資料】即可獲取資料免費領取方式!


分享到:


相關文章: