Maven を使用して SpringBoot プロジェクトを構築する

序文

Springboot プロジェクトの作成方法はオンラインで紹介されていますが、そのほとんどは IDE 開発ツールに基づいており、Maven によって管理されています. 現在の開発環境が十分でない場合は、Maven コマンドを直接使用して SpringBoot プロジェクトを作成および管理できます.コマンドを使用してプロジェクトを作成することに慣れている方 SpringBoot のプロジェクト構造を理解するのに便利です。

1. Maven プロジェクトを作成する

1.1 Maven を使用して単純な Java プロジェクトを作成する

VSCodeを例に取ると、 Ctrl + ` ショートカットキーでターミナルを開く
ここに画像の説明を挿入
プロジェクトの名前はexample
と仮定して、コンソールに次のMavenコマンドを入力して生成します

mvn archetype:generate
 "-DgroupId=com.project"
 "-DartifactId=example" 
 "-DarchetypeArtifactId=maven-archetype-quickstart"
 "-DinteractiveMode=false"
  1. -DgroupId=com.project: グループ ID。
  2. -DartifactId=example: プロジェクト名。maven は、この名前に従って現在のディレクトリにこの名前の新しいディレクトリを作成し、プロジェクトをビルドします。
  3. -DarchetypeArtifactId: プロジェクトのアーキタイプ。プロジェクトの初期構造を作成するために使用されるアーキタイプです。ここでは、最初に maven-archetype-quickstart を使用して単純な Java アプリケーションを作成します。
  4. -DinteractiveMode=false : 対話モードで実行されたかどうか、false の場合、プロジェクトはデフォルト設定でビルドされます。

作成が成功すると、図に示すように、コンソールに次のように表示されます。
ここに画像の説明を挿入

1.2 プロジェクト構造の紹介

ここに画像の説明を挿入

注: 上記のビルドは単純な Java プロジェクトです. Web プロジェクトをビルドする場合は、その後の開発を容易にするためにディレクトリ構造も調整す​​る必要があります. 次の調整を行う必要があります.

  1. これら 2 つのファイル App.java と AppTest.java は必要ありません。これらは直接削除できます。
  2. メイン ディレクトリの下にリソース ディレクトリを追加して、リソース ファイルを格納します。
  3. example/src/main/java/com/project パッケージの下に example パッケージを作成し、プロジェクト全体のスタートアップ アイテムとして /example パッケージの下に exampleApplication.java クラスを作成します。

調整後のディレクトリ構造は次の図のようになります。
ここに画像の説明を挿入

1.3 プロジェクトの依存関係を追加する

<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.project</groupId>
  <artifactId>example</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>example</name>
  <url>http://maven.apache.org</url>
  <description>用户权限管理系统</description>
  <!-- 设置父模块,这样就可以继承父模块中的配置信息 -->
  <parent>
    <!-- Springboot依赖 -->
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.1.RELEASE</version>
    <relativePath/>
  </parent>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
  </properties>

  <dependencies>
    <!-- 添加 web 依赖 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>
  
  <build>
    <plugins>
      <!-- Spirng Boot Maven 插件 -->
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

1.4 スタートアップ クラスの追加

main メソッドをスタートアップ クラスに追加し、スタートアップ クラスとして設定します。

package com.project.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@ServletComponentScan
@SpringBootApplication
public class exampleApplication {
    
    
    public static void main(String[] args) {
    
    
        SpringApplication.run(exampleApplication.class,args);
        System.out.println("你好,这里是example项目");
    }
}

1.5 プロジェクトのコンパイルとパッケージ化

ターミナルで次のコマンドを入力して、依存関係をダウンロードします

mvn clean install

実行後のプロジェクト構造は次のとおりです。
ここに画像の説明を挿入

上記のステートメントを実行した後 (またはプロジェクトを作成した後)、プロジェクトのルート ディレクトリの下に追加のターゲット ディレクトリがあります。ターゲットは、プロジェクトのビルド後に jar パッケージ、war パッケージ、およびコンパイルされたクラス ファイルを格納するために使用されます. ターゲット ディレクトリ内のすべてのコンテンツは、Maven のプロジェクト構築プロセス中に生成されます.

1.6 コントローラーのコンテンツを追加する

プロジェクトが正常にビルドされました。プロジェクトが正常に作成されたかどうかを確認するために Controller インターフェースを書きましょう

  1. ビジネス関連のコードを格納するために、example/src/main/java/com/project/example パッケージの下に (任意の名前で) システム パッケージを作成します。
  2. システム パッケージの下にコントローラー パッケージを追加して、フロントエンド インターフェイス コントローラーのクラスを格納します。
  3. プロジェクトを起動するためのテスト クラスとして、コントローラー パッケージの下に FirstController.java クラスを追加します。
package com.project.system.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController//Controller 里面的方法都以 json 格式输出
public class FirstController {
    
    
    @GetMapping("/first")
    public String first(){
    
    
        return "你好";
    }
}

2. プロジェクトを開始する

次に、コンソールでプロジェクトを開始する 2 つの一般的な方法を紹介します。

  1. Maven でプロジェクトを開始します。
  2. jar パッケージを実行してプロジェクトを開始します。

ここでは Maven コマンドを使用してプロジェクトを開始します

2.1 Maven を使用してプロジェクトを開始する

mvn package 编译打包
mvn spring-boot:run 启动项目

起動完了後、下図のようにコンソールが表示されれば起動成功です。
ここに画像の説明を挿入

3. SpringBoot 設定ファイルの詳細説明

3.1 設定ファイルの説明

Spring Boot プロジェクトでは、次の 2 つのファイル形式の構成ファイルがサポートされています。

application.properties
application.yml

プロパティ構成ファイルと yml 構成ファイルの違いを見てみましょう。

  • application.properties は、通常のキー=値形式の構成ファイルです。たとえば、次のようになります。
# 默认加载配置项
spring.profiles.active=prod
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=root

プロパティ ファイルには欠点があり、構成するパラメータが多数ある場合、その階層が明確ではなく、読みにくいことがわかります。そして、同じレベルの名前がたくさん繰り返されます。

  • yml ファイルの基本的な書き方は、 key: (スペース) value です。キーと値がコロンとスペースでつながれていることに注意してください. どちらも必須です. そうしないと, 設定項目を読み取ることができません.
spring:
  profiles:
    active: prod
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test
    username: root
    password: root

注: 上位レベルと下位レベルの関係はスペースで表されます. データの左揃えの列が同じレベルにある限り、スペースの数は必要ありません. 見栄えを良くするために、タブのインデントまたは均一な 4 つのスペースを使用して上下のレベルを区別することをお勧めします。

プロパティ ファイルと yml ファイルはどちらも構成ファイルとして使用され、その目的に違いはありません. プロパティ構成ファイルと比較して、yml 構成ファイルは、より強い階層感覚で記述されます。Spring が公式に推奨する形式は .yml 形式であるため、現在、Spring Boot の Web プロジェクトの構成ファイルのほとんどは yml ファイルを使用しています。この記事では、プロジェクトの構成ファイルとして yml ファイルも使用します。

3.2 ポートとパスの構成

/src/main/resources ディレクトリに application.yml ファイルを作成し、以下の設定内容を書くと、プロジェクトのルートパスを変更できます。

server:
  # 配置端口
  # port: 8080
  servlet:
    # 设置项目路径
    context-path: /example

追加後、プロジェクトを再パッケージ化して実行します。

mvn package 编译打包
mvn spring-boot:run 启动项目

次の図に示すように、ブラウザーを開き、localhost:8080/upms/hello と入力してアクセスします。
ここに画像の説明を挿入

3.3 カスタム構成プロパティ

システムによって提供される構成に加えて、次のカスタム構成を application.yml に追加することもできます。

server:
  # 配置端口
  port: 8080
  servlet:
    # 设置项目路径
    context-path: /example

# 自定义配置
example:
  name: example
  version: 0.0.1
  description: example项目

構成アイテムを使用する場合は、クラスのプロパティの前に注釈 @Value("${property name}") を追加するだけでよく、controller/FirstController.java に次の内容を追加できます。

package com.project.example.system.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController // Controller 里面的方法都以 json 格式输出
public class FirstController {
    
    
    @Value("${example.name}")
    private String appName;

    @Value("${example.version}")
    private String appVersion;

    @Value("${example.description}")
    private String appDescription;

    @GetMapping("/Msg")
    public String Msg() {
    
    
        return "名称:" + appName + "," +
               "版本:" + appVersion + " ," +
               "描述" + appDescription;
    }

    @GetMapping("/first")
    public String first() {
    
    
        return "你好";
    }
}

追加後、プロジェクトを再パッケージ化して実行します。

mvn package 编译打包
mvn spring-boot:run 启动项目

次の図に示すように、ブラウザーを開き、localhost:8080/upms/Msg と入力してアクセスします。

ここに画像の説明を挿入

3.4 マルチ環境構成

プロジェクトを開発する過程で、一連のプログラムを異なる環境でリリースする必要が生じる場合があり、そのデータベース構成、ポート構成、またはその他の構成が異なります.間違って、不必要なトラブルを引き起こします。
通常、この場合、解決するさまざまな環境に対してさまざまな構成ファイルを構成できます。Spring Boot プロジェクトでは、デフォルトで次の 2 つの形式がサポートされています。

  • application-{name}.properties
  • アプリケーション-{名前}.yml

ここで、{name} は環境 ID に対応します。Spring Boot プロジェクトで別の構成ファイルを作成することもできます。ファイル名は application-{name}.yml の形式です。

  • application-dev.yml 開発環境
  • application-test.yml テスト環境
  • application-prod.yml 本番環境

src/main/java/resources ディレクトリの下に、下図に示す構成ファイルを作成します。
ここに画像の説明を挿入
次の内容を application-dev.yml 構成ファイルに追加します。

# 自定义配置
example:
  name: example
  version: 0.0.2
  description: example项目(开发环境)

次の情報を application-prod.yml 構成ファイルに追加します。

# 自定义配置
example:
  name: example
  version: 0.0.3
  description: example项目(生产环境)

次の情報を application-test.yml 構成ファイルに追加します。

# 自定义配置
example:
  name: example
  version: 0.0.4
  description: example项目(测试环境)

次の情報を application-test.yml 構成ファイルに追加します。

# 自定义配置
example:
  name: example
  version: 0.0.4
  description: example项目(测试环境)

次に、spring.profiles.active を構成ファイル application.yml に追加して、現在の環境を設定します。ここで、test は、application-test.yml 構成ファイルがデフォルトで有効になっていることを意味します。
ここに画像の説明を挿入

テストを dev または prod and test に変更して効果を確認することもできますが、ここでは説明しません。

4. パーソナライズされたバナー設定

以下の図に示すように、Spring Boot プロジェクトが開始されると、コンソールに組み込みのバナーが出力されることに気付きましここに画像の説明を挿入

:カスタムスタートアップ バナー オンライン生成ツール
テキストと画像を表示できます, 表示方法はあなた次第です.
/resources ディレクトリに banner.txt ファイルを作成し、次の場所を追加します:
ここに画像の説明を挿入
banner.txt に次の内容を追加します.ファイル。

                                   _ __     _            
   ___    __ __   __ _    _ __    | '_ \   | |     ___   
  / -_)   \ \ /  / _` |  | '  \   | .__/   | |    / -_)  
  \___|   /_\_\  \__,_|  |_|_|_|  |_|__   _|_|_   \___|  
_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""| 
"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-' 

追加後、Spring Boot は起動時にこのファイルをロードし、再コンパイルして実行して効果を確認します。

mvn package 编译打包
mvn spring-boot:run 启动项目

ここに画像の説明を挿入
あまり役に立ちませんが、かっこよく見えます、ははは

終了

この記事では、Spring Boot を使用して Java Web プロジェクトをビルドし、Maven ツールを使用してプロジェクト全体をインストール、パッケージ化、および実行し、プロジェクトのビルド後にカスタム構成項目を設定し、プロジェクトで構成情報を使用する方法を紹介しました。環境ごとに異なる構成アイテムをカスタマイズします。プロジェクトの実行効果を検証するための簡単なリクエストを提供し、最後にプロジェクトのバナーをカスタマイズします。

上記は私の個人的な学習と使用経験です. 何か間違っている場合は、それを指摘してください.

Supongo que te gusta

Origin blog.csdn.net/m0_59420288/article/details/128177819
Recomendado
Clasificación