Azure Cosmos DB SQL API で Spring Data Gremlin Starter を使用する方法How to use the Spring Data Gremlin Starter with the Azure Cosmos DB SQL API

概要Overview

Spring Data Gremlin Starter は、Apache の Gremlin クエリ言語に Spring Data のサポートを提供します。これは、開発者が任意の Gremlin 互換データ ストアで使用できます。The Spring Data Gremlin Starter provides Spring Data support for the Gremlin query language from Apache, which developers can use with any Gremlin-compatible data store.

この記事では、Azure portal を使用して Gremlin API で使うための Azure Cosmos DB を作成する方法、 Spring Initializr を使用してカスタム Java アプリケーションを作成する方法、カスタム アプリケーションに Spring Data Gremlin Starter 機能を追加し、Gremlin を使用して Azure Cosmos DB にデータを格納する方法、または Azure Cosmos DB からデータを取得する方法を示します。This article demonstrates creating an Azure Cosmos DB by using the Azure portal for use with Gremlin API, then using the Spring Initializr to create a custom java application, and then add the Spring Data Gremlin Starter functionality to your custom application to store data in and retrieve data from your Azure Cosmos DB by using Gremlin.

前提条件Prerequisites

この記事の手順に従うには、次の前提条件が必要です。The following prerequisites are required in order to follow the steps in this article:

重要

この記事の手順を完了するには、Spring Boot 2.0 以上のバージョンが必要です。Spring Boot version 2.0 or greater is required to complete the steps in this article.

Azure portal を使用して Azure Cosmos DB を作成するCreate an Azure Cosmos DB using the Azure portal

Gremlin API で使用するご自身の Azure Cosmos Database を作成するCreate your Azure Cosmos Database for use with Gremlin API

  1. Azure portal (https://portal.azure.com/) を参照し、 [+リソースの作成] をクリックします。Browse to the Azure portal at https://portal.azure.com/ and click +Create a resource.

    リソースの作成

  2. [データベース][Azure Cosmos DB] の順にクリックします。Click Databases, and then click Azure Cosmos DB.

    Azure Cosmos DB の作成

  3. [Azure Cosmos DB] ページで、次の情報を入力します。On the Azure Cosmos DB page, enter the following information:

    • データベースの Gremlin URI の一部として使用する一意の ID を入力します。Enter a unique ID, which you will use as part of the Gremlin URI for your database. たとえば、ID として wingtiptoysdata を入力した場合、Gremlin URI は wingtiptoysdata.gremlin.cosmosdb.azure.com になります。For example: if you entered wingtiptoysdata for the ID, the Gremlin URI would be wingtiptoysdata.gremlin.cosmosdb.azure.com.
    • API として [Gremlin (グラフ)] を選択します。Choose Gremlin (Graph) for the API.
    • データベースに使用するサブスクリプションを選択します。Choose the Subscription you want to use for your database.
    • データベースに対して新しいリソース グループを作成するか、既存のリソース グループを選択するかを指定します。Specify whether to create a new Resource group for your database, or choose an existing resource group.
    • データベースの場所を指定します。Specify the Location for your database.

    これらのオプションの指定後、 [作成] をクリックしてデータベースを作成します。When you have specified these options, click Create to create your database.

    Azure Cosmos DB オプションの指定

  4. データベースが作成されると、それが Azure ダッシュボードに表示され、 [すべてのリソース] ページと [Azure Cosmos DB] ページにも表示されます。When your database has been created, it is listed on your Azure Dashboard, as well as under the All Resources and Azure Cosmos DB pages. これらのいずれかの場所でデータベースをクリックすると、キャッシュのプロパティ ページを開くことができます。You can click on your database on any of those locations to open the properties page for your cache.

    すべてのリソース

  5. データベースのプロパティ ページが表示されたら、 [アクセス キー] をクリックし、データベースの URI とアクセス キーをコピーします。これらの値は Spring Boot アプリケーションで使用します。When the properties page for your database is displayed, click Access keys and copy your URI and access keys for your database; you will use these values in your Spring Boot application.

    [アクセス キー]

ご自身の Azure Cosmos Database にグラフを追加するAdd a graph to your Azure Cosmos Database

  1. [データ エクスプローラー] をクリックし、 [New Graph](新しいグラフ) をクリックします。Click Data Explorer, and then click New Graph.

    新しいグラフ

  2. [グラフの追加] ページが表示されたら、次の情報を入力します。When the Add Graph is displayed, enter the following information:

    • お使いのデータベースの一意のデータベース ID を指定します。Specify a unique Database id for your database.
    • お使いのグラフの一意のグラフ ID を指定します。Specify a unique Graph id for your graph.
    • ストレージ容量は、指定することも、既定値をそのまま使用することもできます。You can choose to specify your Storage capacity, or you can accept the default.
    • スループットを指定します。この例では、400 要求ユニット (RU) を選択できます。Specify your Throughput, and for this example you can choose 400 Request Units (RUs).

    これらのオプションの指定後、 [OK] をクリックして、グラフを作成します。When you have specified these options, click OK to create your graph.

    グラフの追加

  3. 目的のグラフが作成されたら、データ エクスプローラーを使用して、そのグラフを表示できます。After your graph has been created, you can use the Data Explorer to view it.

    グラフのプロパティの表示

Spring Initializr でシンプルな Spring Boot アプリケーションを作成するCreate a simple Spring Boot application with the Spring Initializr

  1. https://start.spring.io/ を参照します。Browse to https://start.spring.io/.

  2. JavaMaven プロジェクトを生成することを指定し、ご自身のアプリケーションの [グループ][アーティファクト] に名前を入力します。次に、お使いの Spring Boot バージョン (2.0 以上) を指定し、 [プロジェクトの生成] をクリックします。Specify that you want to generate a Maven project with Java, enter the Group and Artifact names for your application, specify your Spring Boot version with a version that is equal to or greater than 2.0, and then click Generate Project.

    基本的な Spring Initializr オプション

    注意

    Spring Initializr では、 [グループ][アーティファクト] の名前を使用してパッケージ名を作成します (例: *com.example.wintiptoysdata)。The Spring Initializr uses the Group and Artifact names to create the package name; for example: *com.example.wintiptoysdata.

  3. メッセージが表示されたら、ローカル コンピューター上のパスにプロジェクトをダウンロードします。When prompted, download the project to a path on your local computer.

    カスタム Spring Boot プロジェクトのダウンロード

  4. ファイルをローカル システム上に展開したら、シンプルな Spring Boot アプリケーションの編集を開始できます。After you have extracted the files on your local system, your simple Spring Boot application will be ready for editing.

    カスタム Spring Boot プロジェクト ファイル

Spring Data Gremlin Starter を使用するように Spring Boot アプリを構成するConfigure your Spring Boot app to use the Spring Data Gremlin Starter

  1. アプリのディレクトリで pom.xml ファイルを探します。次に例を示します。Locate the pom.xml file in the directory of your app; for example:

    C:\SpringBoot\wingtiptoysdata\pom.xml

    または-or-

    /users/example/home/wingtiptoysdata/pom.xml

    pom.xml ファイルを探す

  2. テキスト エディターで pom.xml ファイルを開き、<dependencies> の一覧に Spring Data Gremlin Starter を追加します。Open the pom.xml file in a text editor, and add the Spring Data Gremlin Starter to list of <dependencies>:

    <dependency>
       <groupId>com.microsoft.spring.data.gremlin</groupId>
       <artifactId>spring-data-gremlin</artifactId>
       <version>2.0.0</version>
    </dependency>
    

    pom.xml ファイルの編集

  3. pom.xml ファイルを保存して閉じます。Save and close the pom.xml file.

Azure Cosmos DB を使用するように Spring Boot アプリを構成するConfigure your Spring Boot app to use your Azure Cosmos DB

  1. ご自身のアプリの resources ディレクトリを見つけて、application.yml という名前の新しいファイルを作成します。Locate the resources directory of your app, and create a new file named application.yml. 例:For example:

    C:\SpringBoot\wingtiptoysdata\src\main\resources\application.yml

    または-or-

    /users/example/home/wingtiptoysdata/src/main/resources/application.yml

    application.yml ファイルの作成

  2. テキスト エディターで application.yml ファイルを開き、そのファイルに次の行を追加して、サンプルの値をご自身のデータベース用の適切なプロパティで置き換えます。Open the application.yml file in a text editor, and add the following lines to the file, and replace the sample values with the appropriate properties for your database:

    gremlin:
       endpoint: wingtiptoys.gremlin.cosmosdb.azure.com
       port: 443
       username: /dbs/wingtiptoysdb/colls/wingtiptoysgraph
       password: 57686f6120447564652c20426f6220526f636b73==
       telemetryAllowed: false
    

    各値の説明:Where:

    フィールドField 説明Description
    endpoint ご自身のデータベースの Gremlin URI を指定します。これは、このチュートリアルで先ほど Azure Cosmos DB を作成したときに指定した一意の ID から派生します。Specifies the Gremlin URI for your database, which is derived from the unique ID that you specified when you created your Azure Cosmos DB earlier in this tutorial.
    port TCP/IP ポートを指定します。HTTPS 用の 443 を使用する必要があります。Specifies the TCP/IP port, which should be 443 for HTTPS.
    username このチュートリアルで先ほどグラフを追加したときに使用した一意のデータベース IDグラフ ID を指定します。"/dbs/ {Database id} /colls/ {Graph id} " という構文を使用して入力する必要があります。Specifies the unique Database id and Graph id that you used when you added your graph earlier in this tutorial; this must be entered using the following syntax: "/dbs/{Database id}/colls/{Graph id}".
    password このチュートリアルで先ほどコピーしたプライマリまたはセカンダリのアクセス キーを指定します。Specifies either the primary or secondary Access key that you copied earlier in this tutorial.
    telemetryAllowed 利用統計情報を有効にする場合は true、それ以外の場合は false を指定します。Specify true if you want to enable telemetry; otherwise, false.
  3. application.yml ファイルを保存して閉じます。Save and close the application.yml file.

基本的なデータベース機能を実装するサンプル コードを追加するAdd sample code to implement basic database functionality

このセクションでは、ご自身のデータベースにデータを格納するために必要な Java クラスを作成します。In this section, you create the necessary Java classes for storing data in your database.

アプリケーションのメイン クラスを変更するModify the main application class

  1. アプリのパッケージ ディレクトリでメイン アプリケーションの Java ファイルを探します。次に例を示します。Locate the main application Java file in the package directory of your app; for example:

    C:\SpringBoot\wingtiptoysdata\src\main\java\com\example\wingtiptoysdata\WingtiptoysdataApplication.java

    または-or-

    /users/example/home/wingtiptoysdata/src/main/java/com/example/wingtiptoysdata/WingtiptoysdataApplication.java

    アプリケーションの Java ファイルを探す

  2. テキスト エディターでメイン アプリケーションの Java ファイルを開き、ファイルに次の行を追加します。Open the main application Java file in a text editor, and add the following lines to the file:

    package com.example.wingtiptoysdata;
    
    // These imports are required for the application.
    import com.microsoft.spring.data.gremlin.common.GremlinFactory;
    import com.example.wingtiptoysdata.domain.Network;
    import com.example.wingtiptoysdata.domain.Person;
    import com.example.wingtiptoysdata.domain.Relation;
    import com.example.wingtiptoysdata.repository.NetworkRepository;
    import com.example.wingtiptoysdata.repository.PersonRepository;
    import com.example.wingtiptoysdata.repository.RelationRepository;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import javax.annotation.PostConstruct;
    import javax.annotation.PreDestroy;
    
    @SpringBootApplication
    public class WingtiptoysdataApplication {
    
        // Define several person classes to store personal data.
        private final Person person1 = new Person("01", "Nellie Hughes", "23");
        private final Person person2 = new Person("02", "Delmar Alfred", "34");
        private final Person person3 = new Person("03", "Kelley Hunter", "45");
        private final Person person4 = new Person("04", "Roscoe Guerin", "56");
        private final Person person5 = new Person("05", "Gracie Chavez", "67");
    
        // Define relationship classes to define the relationships between some of the persons.
        private final Relation relation1 = new Relation("0102", "siblings", person1, person2);
        private final Relation relation2 = new Relation("0203", "coworkers", person2, person3);
        private final Relation relation3 = new Relation("0301", "parent", person3, person1);
        private final Relation relation4 = new Relation("0302", "parent", person3, person2);
        private final Relation relation5 = new Relation("0501", "grandparent", person5, person1);
        private final Relation relation6 = new Relation("0502", "grandparent", person5, person2);
    
        // Define the network.
        private final Network network = new Network();
    
        // Autowire the repositories and factory.
        @Autowired
        private PersonRepository personRepo;
        @Autowired
        private RelationRepository relationRepo;
        @Autowired
        private NetworkRepository networkRepo;
        @Autowired
        private GremlinFactory factory;
    
        // Run the Spring application and exit.
     public static void main(String[] args) {
            SpringApplication.run(WingtiptoysdataApplication.class, args);
            System.exit(0);
     }
    
        // Perform post-construct operations.    
        @PostConstruct
        public void setup() {
            // Delete any existing data from the database.
            this.networkRepo.deleteAll();
    
            // Add the relationship classes as edges.
            this.network.getEdges().add(this.relation1);
            this.network.getEdges().add(this.relation2);
            this.network.getEdges().add(this.relation3);
            this.network.getEdges().add(this.relation4);
            this.network.getEdges().add(this.relation5);
            this.network.getEdges().add(this.relation6);
    
            // Add the person classes as vertices.
            this.network.getVertexes().add(this.person1);
            this.network.getVertexes().add(this.person2);
            this.network.getVertexes().add(this.person3);
            this.network.getVertexes().add(this.person4);
            this.network.getVertexes().add(this.person5);
    
            // Save the network.
            this.networkRepo.save(this.network);
        }
    }
    
  3. メイン アプリケーションの Java ファイルを保存して閉じます。Save and close the main application Java file.

構成情報を格納するための基本クラスを定義するDefine a basic class for storing configuration information

  1. ご自身のアプリのパッケージ ディレクトリに config という名前のフォルダーを作成します。次に例を示します。Create a folder named config under the package directory of your app; for example:

    C:\SpringBoot\wingtiptoysdata\src\main\java\com\example\wingtiptoysdata\config

    または-or-

    /users/example/home/wingtiptoysdata/src/main/java/com/example/wingtiptoysdata/config

  2. config ディレクトリに UserRepositoryConfiguration.java という名前の新しい Java ファイルを作成し、テキスト エディターでそのファイルを開いて、次の行を追加します。Create a new Java file named UserRepositoryConfiguration.java in the config directory, then open the file in a text editor, and add the following lines:

    package com.example.wingtiptoysdata.config;
    
    import com.microsoft.spring.data.gremlin.common.GremlinConfiguration;
    import com.microsoft.spring.data.gremlin.common.GremlinFactory;
    import com.microsoft.spring.data.gremlin.config.AbstractGremlinConfiguration;
    import com.microsoft.spring.data.gremlin.repository.config.EnableGremlinRepositories;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.context.properties.EnableConfigurationProperties;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    
    @Configuration
    @EnableGremlinRepositories(basePackages = "com.example.wingtiptoysdata.repository")
    @EnableConfigurationProperties(GremlinConfiguration.class)
    @PropertySource("classpath:application.yml")
    public class UserRepositoryConfiguration extends AbstractGremlinConfiguration {
    
        @Autowired
        private GremlinConfiguration config;
    
        @Override
        public GremlinConfiguration getGremlinConfiguration() {
            return this.config;
        }
    }
    
  3. UserRepositoryConfiguration.java ファイルを保存して閉じます。Save and close the UserRepositoryConfiguration.java file.

グラフ データベースの要素を定義するクラスのセットを定義するDefine a set of classes that define the elements of your graph database

  1. ご自身のアプリのパッケージ ディレクトリに domain という名前のフォルダーを作成します。次に例を示します。Create a folder named domain under the package directory of your app; for example:

    C:\SpringBoot\wingtiptoysdata\src\main\java\com\example\wingtiptoysdata\domain

    または-or-

    /users/example/home/wingtiptoysdata/src/main/java/com/example/wingtiptoysdata/domain

  2. domain ディレクトリに Person.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named Person.java in the domain directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.domain;
    
    import com.microsoft.spring.data.gremlin.annotation.Vertex;
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    import org.springframework.data.annotation.Id;
    
    @Data
    @Vertex
    @AllArgsConstructor
    @NoArgsConstructor
    public class Person {
    
        @Id
        private String id;
    
        private String name;
    
        private String age;
    }
    
  3. Person.java ファイルを保存して閉じます。Save and close the Person.java file.

  4. domain ディレクトリに Relation.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named Relation.java in the domain directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.domain;
    
    import com.microsoft.spring.data.gremlin.annotation.Edge;
    import com.microsoft.spring.data.gremlin.annotation.EdgeFrom;
    import com.microsoft.spring.data.gremlin.annotation.EdgeTo;
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    import org.springframework.data.annotation.Id;
    
    @Data
    @Edge
    @AllArgsConstructor
    @NoArgsConstructor
    public class Relation {
    
        @Id
        private String id;
    
        private String name;
    
        @EdgeFrom
        private Person personFrom;
    
        @EdgeTo
        private Person personTo;
    }
    
  5. Relation.java ファイルを保存して閉じます。Save and close the Relation.java file.

  6. domain ディレクトリに Network.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named Network.java in the domain directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.domain;
    
    import com.microsoft.spring.data.gremlin.annotation.EdgeSet;
    import com.microsoft.spring.data.gremlin.annotation.Graph;
    import com.microsoft.spring.data.gremlin.annotation.VertexSet;
    import lombok.Getter;
    import org.springframework.data.annotation.Id;
    
    import java.util.ArrayList;
    import java.util.List;
    
    @Graph
    public class Network {
    
        @Id
        private String id;
    
        public Network() {
            this.edges = new ArrayList<Object>();
            this.vertexes = new ArrayList<Object>();
        }
    
        @EdgeSet
        @Getter
        private List<Object> edges;
    
        @VertexSet
        @Getter
        private List<Object> vertexes;
    }
    
  7. Network.java ファイルを保存して閉じます。Save and close the Network.java file.

グラフ データベース用のリポジトリを定義するクラスのセットを定義するDefine a set of classes that define the repositories for your graph database

  1. ご自身のアプリのパッケージ ディレクトリに repository という名前のフォルダーを作成します。次に例を示します。Create a folder named repository under the package directory of your app; for example:

    C:\SpringBoot\wingtiptoysdata\src\main\java\com\example\wingtiptoysdata\repository

    または-or-

    /users/example/home/wingtiptoysdata/src/main/java/com/example/wingtiptoysdata/repository

  2. repository ディレクトリに NetworkRepository.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named NetworkRepository.java in the repository directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.repository;
    
    import com.microsoft.spring.data.gremlin.repository.GremlinRepository;
    import com.example.wingtiptoysdata.domain.Network;
    import org.springframework.stereotype.Repository;
    
    @Repository
    public interface NetworkRepository extends GremlinRepository<Network, String> {
    }
    
  3. NetworkRepository.java ファイルを保存して閉じます。Save and close the NetworkRepository.java file.

  4. repository ディレクトリに PersonRepository.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named PersonRepository.java in the repository directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.repository;
    
    import com.microsoft.spring.data.gremlin.repository.GremlinRepository;
    import com.example.wingtiptoysdata.domain.Person;
    import org.springframework.stereotype.Repository;
    
    @Repository
    public interface PersonRepository extends GremlinRepository<Person, String> {
    }
    
  5. PersonRepository.java ファイルを保存して閉じます。Save and close the PersonRepository.java file.

  6. repository ディレクトリに RelationRepository.java という名前の新しい Java ファイルを作成し、テキスト エディターでファイルを開いて、次の行を追加します。Create a new Java file named RelationRepository.java in the repository directory, then open the file in a text editor and add the following lines:

    package com.example.wingtiptoysdata.repository;
    
    import com.microsoft.spring.data.gremlin.repository.GremlinRepository;
    import com.example.wingtiptoysdata.domain.Relation;
    import org.springframework.stereotype.Repository;
    
    @Repository
    public interface RelationRepository extends GremlinRepository<Relation, String> {
    }
    
  7. RelationRepository.java ファイルを保存して閉じます。Save and close the RelationRepository.java file.

アプリのビルドとテストBuild and test your app

  1. コマンド プロンプトを開き、ディレクトリを pom.xml ファイルが置かれているフォルダーに変更します。次に例を示します。Open a command prompt and change directory to the folder where your pom.xml file is located; for example:

    cd C:\SpringBoot\wingtiptoysdata

    または-or-

    cd /users/example/home/wingtiptoysdata

  2. Spring Boot アプリケーションを Maven でビルドし、実行します。次に例を示します。Build your Spring Boot application with Maven and run it; for example:

    mvn clean package
    mvn spring-boot:run
    
  3. ご自身のアプリケーションにランタイム メッセージがいくつか表示されます。エラーがない場合は、Azure portal を使用して、Azure Cosmos DB の内容を表示できます。Your application will display several runtime messages, and if there were no errors, you can use the Azure portal to view the contents of your Azure Cosmos DB. これを行うには、お使いのデータベースのプロパティ ページで [データ エクスプローラー] をクリックし、 [Execute Gremlin Query](Gremlin クエリの実行) をクリックして、データを表示する結果の一覧から項目を選択します。To do so, click Data Explorer on the properties page for your database, then click Execute Gremlin Query, and then select an item from the list of results to view the data.

    ドキュメント エクスプローラーを使用してデータを表示する

次の手順Next steps

Spring および Azure の詳細については、Azure ドキュメント センターで引き続き Spring に関するドキュメントをご確認ください。To learn more about Spring and Azure, continue to the Spring on Azure documentation center.

その他のリソースAdditional Resources

Gremlin および Graph API に対する Azure サポートの詳細については、次の記事をご覧ください。For more information about Azure support for Gremlin and Graph API, see the following articles:

Azure Cosmos DB と Java の使用について詳しくは、次の記事をご覧ください。For more information about using Azure Cosmos DB and Java, see the following articles:

Azure での Spring Boot アプリケーションの使用の詳細については、次の記事を参照してください。For more information about using Spring Boot applications on Azure, see the following articles:

Java での Azure の使用の詳細については、「Java 開発者向けの Azure」および「Azure DevOps と Java の操作」を参照してください。For more information about using Azure with Java, see the Azure for Java Developers and the Working with Azure DevOps and Java.

Spring Framework は Java 開発者のエンタープライズ レベルのアプリケーション作成を支援するオープンソース ソリューションです。The Spring Framework is an open-source solution that helps Java developers create enterprise-level applications. このプラットフォームで構築される特に知られたプロジェクトの 1 つが Spring Boot です。これによって、スタンドアロンの Java アプリケーションの作成方法が簡略化されます。One of the more-popular projects that is built on top of that platform is Spring Boot, which provides a simplified approach for creating stand-alone Java applications. Spring Boot を使い始めた開発者を支援するために、https://github.com/spring-guides/ では、サンプルの Spring Boot パッケージがいくつか用意されています。To help developers get started with Spring Boot, several sample Spring Boot packages are available at https://github.com/spring-guides/. 基本的な Spring Boot プロジェクトの一覧から選択するだけでなく、 Spring Initializr は、開発者がカスタム Spring Boot アプリケーションの作成を開始できるように支援します。In addition to choosing from the list of basic Spring Boot projects, the Spring Initializr helps developers get started with creating custom Spring Boot applications.