1.プロジェクトの準備-Maven集約プロジェクトを作成するための学習
1.1。集約プロジェクトを作成する
まず、通常のMavenプロジェクトを作成します。
次に、プロジェクト名と組織IDを入力します。
プロジェクトが正常に作成されると、pom.xmlがデフォルトで開かれ、構成がファイルに追加されます。
<packaging>pom</packaging>
例えば:
完了後、プロジェクトは親プロジェクトと見なされ、当面は処理できません。次に、親プロジェクトの名前を右クリックして、子プロジェクトを作成します。作成されるメニューコマンドはNew
> Module
です。
モジュールプロジェクトを作成するときも、Mavenプロジェクトを選択します。詳細構成インターフェースでは、次のものが必要です。
- 親プロジェクトを決定します。
- カスタム名。接頭辞として「親プロジェクト名-」を使用することをお勧めします。
- GroupIdを入力します。
- 場所を確認してください。
例えば:
サブモジュールが作成されると、左側のプロジェクト管理パネルにサブモジュールプロジェクトが表示されます。
また、ノードは親プロジェクトのpom.xmlに自動的に追加され<modules>
、サブモジュールプロジェクトが構成されています。
サブモジュールプロジェクトにも独自の独立したpom.xmlがあります。親プロジェクトが構成されていることがわかります。
次に、同じ手順を使用して、2番目のサブモジュールプロジェクトを作成しますshop-order
。
1.2。親プロジェクトの設定により、各サブモジュールプロジェクトは同じ依存関係を使用できます
親プロジェクトのpom.xmlに依存関係と関連構成を追加します。
その後、各サブモジュールプロジェクトはjunit
依存関係を追加する必要はありませんが、junit
単体テストに直接使用できます。
1.3。親プロジェクトで子プロジェクトのオプションの依存関係を構成する
一部の依存関係が使用する必要があるサブモジュールプロジェクトの一部であり、他の一部のサブモジュールプロジェクトを使用する必要がない場合は、全体的な統合管理を容易にするために、親プロジェクトのpom.xmlの<dependencyManagement>
ノードを介して構成し、ノードで構成された依存関係を使用する必要があります。 、サブプロジェクトは直接使用できません:
依存クラスをサブプロジェクトで直接使用しようとすると、エラーが発生します。
shop-orderサブモジュールプロジェクトでMySQLの依存関係を使用する必要があり、依存関係をサブモジュールプロジェクトのpom.xmlに追加する必要があると仮定します。ただし、依存関係を追加する場合、バージョンを指定する必要はありません。
次に、Mavenを更新し(更新ボタンをクリック)、もう一度テストします。
この時点で、サブプロジェクトはMySQLの依存関係を使用できます。
このアプローチを使用すると、従属バージョンを管理するためにサブプロジェクトを必要とせず、すべてのバージョン管理を親プロジェクトに集中させることができます。もちろん、サブプロジェクトで他のバージョンを使用する必要がある場合は、<version>
ノードを追加して指定することもできます。
また、上記の操作手順では、shop-userサブモジュールプロジェクトはMySQLへの依存関係を追加しないため、同じテストを実行するとエラーが必ず発生します。
2.プロジェクトの予備準備-SpringBoot集約プロジェクトを作成するための学習
2.1。親プロジェクトを作成する
まず親プロジェクトを作成し、作成したプロジェクトの最初のパネルの左側でSpring Initializr
それを選択し、右側で使用可能なURLを確認して、[OK]をクリックします。
2番目のインターフェースで、[ Group]と[ Artifact]に入力しMaven POM
、[ Type as]を選択します。他のオプションは変更する必要がなく、直接確認するだけです。
3番目のインターフェースでは、依存するかどうかを選択できます。この親プロジェクトでは、当面はどの依存関係を使用する必要があるかわからないため、まずオフにして、後で自分で追加できます。
4番目のインターフェースでは、主にプロジェクトファイルが保存されている場所が正しいかどうかを判断するために使用されます。すべてが正しい場合、作成プロセスは完了です!
2.2。サブプロジェクトを作成する
親プロジェクトを右クリックし、New
>をModule
選択Spring Initializr
し、サブモジュールプロジェクトを作成する最初のインターフェイスで選択します。2番目のインターフェイスで、サブモジュールプロジェクトの情報を確認します。サブモジュールプロジェクトのアーティファクト値が減少している場合は注意してください。デフォルトのパッケージ値は、マイナス記号の両側にある名前を直接接続するものです。小数点を追加して区切ることをお勧めします。
3番目のインターフェースで、必要に応じて依存関係を確認します。このサブプロジェクトをTomcatにデプロイする場合は、Spring Web
依存関係を確認できます(作成が成功した後で、各依存関係を追加することもできます)。
4番目のインターフェースでは、問題がなければ、直接作成が完了します。
作成が完了すると、サブモジュールプロジェクトのpom.xmlファイルで、その親プロジェクトが以前に作成されたブログプロジェクトではなく、SpringBootプロジェクトであることがわかります。
ここで親プロジェクトをブログプロジェクトに変更する必要があります(親プロジェクトのpom.xmlファイルを開いて関連情報を見つけ、それをコピーしてサブモジュールプロジェクトに貼り付けます)。
同時に、<modules>
サブモジュールプロジェクトを構成するためにノードが親プロジェクトに自動的に追加されることはなく、手動で追加する必要があります(さらに、現時点では親プロジェクトに<dependencies>
ノードと<build>
ノードは必要なく、自分で削除できます)。
すべてが完了したら、同じ操作方法を使用して、別のサブモジュールプロジェクトblog-commentを作成します。
2つのサブモジュールプロジェクトは直接実行できるため、Spring Web
依存関係が追加されると、Tomcatを直接起動でき、デフォルトで8080
ポートが占有されます。したがって、競合を回避するために、これらのサブモジュールプロジェクトを明示的に追加する必要があります。ポートが別のポートに変更されました!
3. SLF4jを使用してログを印刷する
SLF4jを使用System.out.println()
すると、一部のコンテンツを使用する場合と同様に、出力ログをカスタマイズできます。SLF4jを使用する利点は、実行効率が高く、ログレベルをカスタマイズできるため、ログをフィルターできる(低レベルのログが表示されない)ことです。 )。
SLF4j lombok
を使用する場合は、一緒に使用することをお勧めします。lombok
依存関係を最初に追加する必要があります。この依存関係は複数のサブモジュールプロジェクトで使用される可能性があるため、この依存関係を親プロジェクトに直接追加できます。
次に、任意のサブモジュールプロジェクトでSLF4jをテストして使用できます。
SLF4jでは、低から高のログレベルは次のとおりです。
- TRACE:追跡情報。
- デバッグ:デバッグ。
- INFO:一般的な情報。
- 警告:警告:一般に、古くなったものとして宣言されたAPIの使用や、ストリームオブジェクトが閉じられていないなど、コードの質が低いことが原因です。
- エラー:エラー。通常、プロジェクトはクラッシュしません。
- 致命的:致命的なエラー。プロジェクトがクラッシュします。
- オフ:すべてのログの出力をオフにします。
ログの出力レベルは、プロジェクトのapplication.propertiesで構成できます。
logging.level.cn.tedu.blog.user=trace
上記の構成情報は、構成ログレベル(logging.level
)を示し、cn.tedu.blog.user
パッケージが設定されています。つまり、このパッケージのクラスと現在のプロジェクト出力ログのすべての子孫の後に、それらがtrace
レベルに従って表示さtrace
れ、それ以上のレベルのログが表示されます。表示!
上記の構成情報では、パッケージ名の右側にクラス名を追加することもできます。これは、特定のクラスのログ表示レベルのみが構成されていることを示しています。
trace
レベルに設定すると、各レベルのログを出力して表示できます。通常、開発段階では、直接trace
レベルに設定できます。また、開発時にはlog
、使用する方法を区別し、より機密性の高い情報をdebug
方法で出力する必要があります、プロジェクトが完了してサーバーにデプロイする必要がある場合は、warn
(警告)以上に設定することをお勧めします。そうすると、公式サーバーの操作中に下位レベルのログが表示されなくなります。
log
各メソッドを呼び出すとき、出力コンテンツを{}
プレースホルダーとして使用でき(大括弧の間にコンテンツはありません)、次に変数パラメーターを使用してプレースホルダーに対応する値を追加します。次に例を示します。