如何在 Eclipse 中創建 Spring Boot 項目

已發表: 2021-05-27

就構建簡單的應用程序而言,Java 編程語言通常被認為過於復雜和繁瑣。 然而,Java 提供了一個穩定的平台,提供了一個極其成熟的生態系統,使開發人員可以輕鬆創建強大的軟件。

Spring 框架(Java 生態系統中存在的眾多強大框架之一)帶來了一系列配置和編程模型,以簡化 Java 應用程序的開發和測試。

在本文中,我們將介紹 STS IDE(Eclipse Spring Tool Suite)的一些有用特性,這些特性對您在 Eclipse 中開發 Spring Boot 項目或應用程序很有用。 我們將討論與使用 Eclipse 構建 Spring 應用程序的傳統方式相比,STS 的各種好處。

然後,我們將了解如何引導應用程序、如何執行它,以及最終如何添加額外的依賴項。 最後,我們將通過添加應用程序參數來結束本教程。

目錄

STS的主要特點

Spring Tool Suite 是 STS 的縮寫,是一個基於 Eclipse 的開發環境,專為創建無縫 Spring Boot 項目和應用程序而定制。

STS 為開發人員提供了一個現成的環境,用於實現、調試、運行和部署他們的 Spring 應用程序。 STS 還包括與 Pivotal tc Server、Pivo​​tal Cloud Foundry、Git、Maven 和 AspectJ 的集成。

Spring Tool Suite 是一個在最新 Eclipse 版本之上作為附加層構建的套件。

項目配置

STS 了解所有基本的 Java 項目結構。 該工具解析配置文件並顯示有關定義的 bean、注入的依賴項、使用的命名空間的詳細信息,並提取某些原型的概述。

STS 功能概述

Eclipse STS 在驗證項目時為您的 Spring 應用程序提供快速修復。 例如,當您使用 Spring Data JPA 時,Eclipse IDE 可用於驗證查詢方法名稱。

Spring Tool Suite 還提供了一個易於理解的各種 bean 方法及其關係的圖形視圖。 如果您想仔細查看 STS 附帶的不同圖形編輯器,可以分別檢查菜單窗口、顯示視圖和 Spring 下可用的視圖。

STS 還為開發人員提供了不限於 Spring 應用程序的附加功能。 您可以在此處查看完整的功能列表

創建一個 Spring 應用程序

讓我們從引導一個簡單的應用程序開始。 如果沒有 STS,可以使用 Spring Initializer 網站或 Spring Boot CLI 創建 Spring 應用程序。 這可以通過單擊 STS 儀表板中的 Create Spring Starter Project 來進一步簡化。

在“New Spring Starter Project”屏幕中,使用默認設置或根據您的項目進行所需的調整,然後轉到下一個屏幕。 在那裡,選擇“Web”並單擊完成。

您的 pom.xml 現在應該如下所示:

<父>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<版本>2.4.0</版本>

<relativePath/> <!– 從存儲庫中查找父級–>

</父>

<屬性>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<java.version>1.8</java.version>

</屬性>

<依賴項>

<依賴>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</依賴>

<依賴>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>測試</scope>

</依賴>

</依賴>

如果您運行的是舊版本的 Spring Boot,請在此處找到最新版本

運行應用程序

只需右鍵單擊項目並選擇“作為 Spring Boot 應用程序運行”即可啟動前面提到的應用程序。 如果沒有 STS,您可以使用以下命令從 CLI 運行應用程序:

$ mvn 彈簧啟動:運行

默認情況下,Spring 應用程序使用運行在 8080 端口上的 Tomcat 啟動。此時,應用程序在 8080 端口上啟動,但不執行任何任務,因為我們還沒有在其中實現任何代碼。

日誌記錄和 ANSI 控制台

當您使用“運行”命令從 IDE 執行項目時,您會發現控制台輸出了一些顏色編碼的日誌語句。 如果您想關閉這些語句,您可以轉到“運行配置”並禁用“在 Spring Boot 選項卡上啟用 ANSI 控制台輸出”複選框。

或者,您還可以通過在 applications.properties 文件中設置屬性值來禁用日誌記錄語句,如下所示:

spring.output.ansi.enabled=從不

JPA 查詢名稱檢查

有時,實現數據訪問層可能會變成一項繁瑣的活動。 可能需要編寫大量樣板代碼來實現極其簡單的查詢和執行分頁。 Spring Data JPA 旨在無縫地促進這種數據訪問層的實現。

首先,將 JPA 的以下依賴項添加到先前生成的 pom.xml 中:

<依賴>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-data-jpa</artifactId>

</依賴>

<依賴>

<groupId>com.h2database</groupId>

<artifactId>h2</artifactId>

</依賴>

您可能已經註意到上面的聲明中沒有指定您的版本。 這是因為依賴項由 spring-boot-starter-parent 管理。

要使 JPA 工作,您需要為您的項目正確定義實體和事務管理器。 但是,使用 Spring 會為您自動配置這些值。 剩下的唯一事情就是創建實際的實體類。

這些實體由容器創建的實體管理器管理。 讓我們創建一個名為 Foo 的實體類:

@實體

公共類 Foo 實現 Serializable {

@ID

@GeneratedValue

私人整數 id;

私有字符串名稱;

// 標準的 getter 和 setter

}

容器將從配置包的根目錄掃描所有使用@Entity 註解的類。

接下來,讓我們為 Foo 實體創建 JPA 存儲庫:

公共接口 FooRepository 擴展 JpaRepository<Foo, Integer> {

public Foo findByNames(String name);

}

在這個階段,您可能已經註意到您的 IDE 現在標記此查詢方法,但有以下異常:

派生查詢無效! 未找到類型 Foo 的屬性名稱!

這是因為您不小心在 JPA 存儲庫的方法名稱末尾寫了一個額外的“s”。 要修復此異常,請刪除多餘的 s 並將其設置為:

public Foo findByName(String name);

罐子類型搜索

Jar Type Search 是 STS 3.5.0 版本中引入的一項功能。 此功能為尚未在類路徑中的類提供內容輔助建議。 STS 幫助開發人員將依賴項添加到他們的 POM 文件中,以防它們不在類路徑中。

例如,讓我們在 Foo 實體類中添加一行。 為了使其正常工作,請確保 java.util.List 的導入語句已經存在。

現在我們可以按如下方式添加 Google Guava:

private List<String> strings = Lists // ctrl + SPACE 獲取代碼補全

然後 IDE 建議將幾個依賴項添加到類路徑中。 從 com.google.common.collect 添加這些依賴項,按回車鍵,然後從 Guava 添加依賴項。

Guava jar 將自動添加到您的 pom.xml 文件中,如下所示:

<依賴>

<groupId>com.google.guava</groupId>

<artifactId>番石榴</artifactId>

<版本>19.0</版本>

</依賴>

添加應用程序參數

Spring 框架最強大的功能之一是支持可以通過多種方式傳遞給應用程序的外部配置——作為命令行參數、在 YAML 文件的屬性中指定或作為系統屬性。 讓我們看看如何使用 STS 添加配置選項作為應用程序啟動參數。

這可以通過將 Tomcat 配置為在不同的端口上啟動來說明。

為了在默認 (8080) 以外的 Tomcat 端口上運行 Spring 應用程序,您需要使用以下命令。 在以下命令中,將自定義端口指定為命令行參數。

mvn spring-boot:run -Drun.arguments=”–server.port=7070”

從世界頂級大學在線學習軟件開發課程獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。

結論

在本文中,我們介紹瞭如何在 STS 中執行 Spring 項目和應用程序。 然而,這還不是全部——在開發過程中可以使用更多有用的功能。 雖然本教程很好地幫助您開始在 Eclipse STS 中創建 Spring Boot 項目,但請記住,您可以從中探索和試驗很多東西。

如果您有興趣了解有關 Java 全棧軟件開發的更多信息,請查看 upGrad 和 IIIT-B 的全棧軟件開發執行 PG 計劃,該計劃專為工作專業人士設計,提供 500 多個小時的嚴格培訓,9+項目和任務、IIIT-B 校友身份、實用的實踐頂點項目和頂級公司的工作協助。

什麼是彈簧靴?

什麼是春季休眠?

Spring hibernate 是一個用於開發企業 Java 應用程序的開源框架。 Spring 框架處理任何 Java 應用程序中最重要的任務。 它允許開發人員在沒有任何副作用的情況下對代碼進行更改。 它允許代碼的可讀性並簡化應用程序的錯誤處理。 它支持數據訪問和數據映射。 Hibernate框架是面向對象編程語言java的java持久化框架。 它提供了在 java 中管理關係數據的功能。 Hibernate 支持 Java 數據抽象層 (jdo)、Java 遠程方法調用 (rmi) 和 Java 事務接口。

什麼是彈簧初始化器?

Spring Initializr 是一個方便的在線 Spring 入門工具。 它根據您的需要生成項目。 無論您是在尋找一個簡單的 CRUD 應用程序,還是一個成熟的 Web 應用程序,這個小站點都會讓您立即開始編碼。 使用您選擇的技術(Java、Groovy、Grails 等)填充您的項目,它將生成基本的項目結構和依賴項。 您可以添加更多依賴項或根據需要自定義項目。 Spring Initializr 是一個非常酷的工具,可以輕鬆啟動新的 Spring Boot 項目。 它會生成項目結構和配置文件,然後您可以對其進行自定義。 它還為您提供了項目可以基於的技術選擇,因此您可以獲得選擇的優勢,而不必自己完成工作。