メソッドにアノテーションを付けます。@Primaryとしてマークすることを忘れないでください。制御を強化するには、BatchConfigurerを実装します。Batchプロジェクトページを参照してください。Batchの自動構成が有効になります。(ジョブ名パターンのコンマ区切りリストを使用)を指定することにより、特定のジョブに絞り込むことができます。Batchを単独で実行することとは異なります。重要な違いは、次のセクションで説明するように、コマンドライン引数を異なる方法で解析するため、問題が発生する可能性があることです。始まるコマンドライン引数をプロパティに変換して、Environmentに追加します。コマンドラインプロパティへのアクセスを参照してください。これは、バッチジョブに引数を渡すために使用しないでください。--なし)を使用します。プロパティを指定すると、ジョブが使用する引数にも影響します。次のコマンドを検討してください。-server.port=7070が提供されます。文字を削除するため、2番目の引数には1つのハイフンがありません。リポジトリ用のデータストアが必要です。Bootを使用する場合、実際のデータベースを使用する必要があります。インメモリデータベースでもかまいません。ジョブリポジトリの構成を参照してください。Actuatorが含まれます。このセクションでは、その使用からしばしば生じる質問に回答します。アクチュエーターエンドポイントのHTTPポートまたはアドレスを変更するスタンドアロンアプリケーションでは、アクチュエーターのHTTPポートはデフォルトでメインHTTPポートと同じになります。management.server.portを設定します。サーバーがバインドできる有効なIPアドレスに設定することもできます。features」セクションの「production-ready-features.html」を参照してください。Bootは、サーバーエラーが発生した場合にブラウザークライアントに表示される「ホワイトラベル」エラーページをインストールします(JSONおよびその他のメディアタイプを使用するマシンクライアントは、適切なエラーコードで適切な応答を確認する必要があります)。設定して、デフォルトのエラーページをオフにします。これにより、使用しているサーブレットコンテナーのデフォルトが復元されます。Bootは引き続きエラービューの解決を試みるため、完全に無効にするのではなく、おそらく独自のエラーページを追加する必要があります。エラーページを独自のもので上書きするかどうかは、使用するテンプレートテクノロジによって異なります。テンプレートを追加できます。テンプレートを追加できます。見つける必要があります。それを行う簡単な方法です。サーブレットコンテナーにハンドラを登録する方法の詳細については、「エラー処理」のセクションも参照してください。******に置き換えられます)。Bootは、このようなキーに適切なデフォルトを使用します。「password」、「secret」、「key」、または「token」という単語で終わるキーはサニタイズされます。いう単語をキーの一部として保持するキーをサニタイズすることもできます。使用してカスタマイズできます。Bootを使用する際のセキュリティに関する質問について説明します。Securityプロジェクトページを参照してください。Bootのデフォルトのwebappセキュリティ設定がオフになります。さまざまな認証オプションなど)を使用できることを意味します。Beanを提供することです。プロキシサーバーの背後で実行するときにHTTPSを有効にするすべてのメインエンドポイントがHTTPS経由でのみ使用できるようにすることは、アプリケーションにとって重要な作業です。依存して、安全かどうか(処理するプロキシサーバーの下流であっても)を報告できるはずです実際のSSL終了)。x-forwarded-proto)の有無によって決定されるため、ほとんどのフロントエンドプロキシで動作するはずです。次の例に示すように、application.propertiesにいくつかのエントリを追加することにより、バルブをオンに切り替えることができます。server.tomcat.remote-ip-header=x-forwarded-forserver.tomcat.protocol-header=x-forwarded-proto(これらのプロパティのいずれかが存在すると、バルブが切り替わります。追加することを検討してください。Bootはホットスワップをサポートしています。このセクションでは、その仕組みに関する質問に回答します。静的コンテンツをリロードするホットリロードにはいくつかのオプションがあります。これは、アプリケーションの高速再起動やLiveReloadのサポートなどの追加の開発時機能、および実用的な開発時設定(テンプレートキャッシングなど)を提供するためです。Devtoolsは、クラスパスの変更を監視することで機能します。変更を有効にするには、静的リソースの変更を「構築」する必要があります。デフォルトでは、変更を保存すると、Eclipseでこれが自動的に行われます。IDEAでは、プロジェクトの作成コマンドが必要なビルドをトリガーします。デフォルトの再起動の除外により、静的リソースを変更してもアプリケーションの再起動はトリガーされません。ライブリロードはトリガーされます。IDEで実行する(特にデバッグをオンにした)ことは、開発を行うための良い方法です(すべての最新のIDEは静的リソースの再読み込みを許可し、通常Javaクラス変更のホットスワップも許可します)。プロパティを参照)、ソースから直接静的ファイルをリロードするコマンドラインからの実行をサポートできます。jsコンパイラプロセスで使用できます。Bootでサポートされるほとんどのテンプレートテクノロジには、キャッシュを無効にする構成オプションが含まれています(このドキュメントで後述)。モジュールを使用する場合、これらのプロパティは開発時に自動的に構成されます。falseに設定します。falseに設定します。falseに設定します。モジュールには、自動アプリケーション再起動のサポートが含まれています。テクノロジーほど高速ではありませんが、通常は「コールドスタート」よりも大幅に高速です。このドキュメントで後述する、より複雑なリロードオプションのいくつかを調査する前に、おそらく試してみるべきです。詳細については、using-spring-boot.htmlセクションを参照してください。コンテナーを再起動せずにJavaクラスをリロードする最新のIDE(Eclipse、IDEAなど)の多くは、バイトコードのホットスワップをサポートしています。クラスまたはメソッドのシグネチャーに影響を与えない変更を加えた場合、副作用なしできれいにリロードする必要があります。Bootには、MavenおよびGradleのビルドプラグインが含まれています。このセクションでは、これらのプラグインに関する一般的な質問に回答します。ビルド情報を生成するMavenプラグインとGradleプラグインの両方で、プロジェクトの座標、名前、およびバージョンを含むビルド情報を生成できます。プラグインは、構成によって追加のプロパティを追加するように構成することもできます。Beanを自動構成します。ゴールの実行を追加します。Mavenプラグインのドキュメントを参照してください。次の例は、Gradleでも同じことを行います。Gradleプラグインのドキュメントを参照してください。ファイルを生成できます。ファイルを生成するための事前構成プラグインが含まれています。それを使用するには、次の宣言をPOMに追加します。プラグインを使用して同じ結果を得ることができます。yyyy-MM-dd’T’HH:mm:ssZ。これは、上記の両方のプラグインのデフォルト形式です。変換し、その形式をJSONに直列化するときに、Jacksonの日付の直列化構成設定で制御できます。POMを参照してください。バージョンを選択するには、次のプロパティを追加します。spring-boot-dependenciesから(直接的または間接的に)継承する場合にのみ機能します。追加した場合、プロパティをオーバーライドする代わりに、自分でアーティファクトを再定義する必要があります。Bootリリースは、この特定のサードパーティ依存関係セットに対して設計およびテストされています。バージョンを上書きすると、互換性の課題が発生する場合があります。Gradleの依存バージョンをオーバーライドするには、Gradleプラグインのドキュメントのこのセクションを参照してください。」JARを作成できます。POMを使用する場合、プラグインを宣言でき、jarは次のように再パッケージ化されます。</plugins></build>親POMを使用しない場合でも、プラグインを使用できます。セクションを追加する必要があります。</plugins></build>使用方法の詳細については、プラグインのドキュメントを参照してください。Bootアプリケーションは依存関係として使用されることを意図していません。アプリケーションに他のプロジェクトと共有するクラスが含まれている場合、推奨されるアプローチは、そのコードを別のモジュールに移動することです。個別のモジュールは、アプリケーションや他のプロジェクトに依存できます。BootのMavenおよびGradleプラグインは、依存関係としての使用に適した個別のアーティファクトを生成するように構成する必要があります。BOOT-INF/classesのアプリケーションクラスをパッケージ化するため、実行可能アーカイブは依存関係として使用できません。実行可能ファイルjarが依存関係として使用されている場合、それらは見つかりません。依存関係として使用できるアーティファクトと実行可能なアーティファクトを生成するには、分類子を指定する必要があります。この分類子は、実行可能アーカイブの名前に適用され、デフォルトのアーカイブは依存関係として使用されます。分類子を構成するには、次の構成を使用できます。実行可能Jarの実行時に特定のライブラリを抽出する実行可能jarのネストされたライブラリのほとんどは、実行するために解凍する必要はありません。特定のライブラリには問題がある場合があります。例:JRubyには、独自のネストされたjarサポートが含まれています。常に独自のファイルとして直接利用可能であることを前提としています。問題のあるライブラリを処理するために、実行可能ファイルjarが最初に実行されるときに、特定のネストされたjarが自動的に解凍されるようにフラグを立てることができます。システムプロパティによって識別される一時ディレクトリに書き込まれます。アプリケーションの実行中に一時ディレクトリに解凍されたjarファイルが削除されないように、オペレーティングシステムが設定されていることを確認する必要があります。例:Mavenプラグインを使用して、JRubyに解凍用のフラグを設定する必要があることを示すには、次の構成を追加します。除外付きの非実行可能JARを作成する多くの場合、2つの別個のビルド製品として実行可能ファイルと実行不可能なjarがある場合、実行可能バージョンにはライブラリjarで必要のない追加の構成ファイルがあります。構成ファイルは、実行不可能なJARから除外される場合があります。Mavenでは、実行可能なjarがメインアーティファクトである必要があり、次のように、ライブラリに分類されたjarを追加できます。プロパティを使用できます。詳細については、この例を参照してください。spring-boot-antlibを使用せずにAntから実行可能アーカイブを構築するAntでビルドするには、依存関係を取得し、コンパイルしてから、jarまたはwarアーカイブを作成する必要があります。モジュールを使用するか、次の指示に従ってください。ディレクトリにアプリケーションのクラスとリソースをパッケージ化します。ディレクトリにアプリケーションのクラスをパッケージ化します。ランタイム依存関係を追加します。アーカイブ内のエントリを圧縮しないでください。(組み込みコンテナー)依存関係を追加します。アーカイブ内のエントリを圧縮しないでください。属性として使用し、必要な他のプロパティをマニフェストエントリとして指定します。プロパティを設定します。次の例は、Antを使用して実行可能アーカイブを構築する方法を示しています。Bootは、従来のデプロイだけでなく、より新しい形式のデプロイもサポートします。このセクションでは、従来のデプロイに関する一般的な質問に回答します。デプロイはWebFluxアプリケーションではサポートされていません。メソッドをオーバーライドすることです。Frameworkのサーブレット3.0サポートが利用され、サーブレットコンテナーによって起動されたときにアプリケーションを構成できます。通常、次の例に示すように、SpringBootServletInitializerを継承するには、アプリケーションのメインクラスを更新する必要があります。}}次のステップは、プロジェクトがjarファイルではなくwarファイルを生成するようにビルド構成を更新することです。変更してパッケージをwarに変更するだけです。変更して、次のようにwarプラグインをプロジェクトに適用する必要があります。'war'プロセスの最後のステップは、組み込みサーブレットコンテナーがwarファイルのデプロイ先のサーブレットコンテナーと干渉しないようにすることです。そのためには、埋め込まれたサーブレットコンテナーの依存関係を提供済みとしてマークする必要があります。Mavenを使用する場合、次の例では、サーブレットコンテナー(この場合はTomcat)が提供されているとマークします。--></dependencies>Gradleを使用する場合、次の例では、サーブレットコンテナー(この場合はTomcat)が提供されているとマークします。構成よりも優先されます。依存関係はテストクラスパスにないため、Webベースの統合テストはすべて失敗します。ディレクトリにパッケージ化された実行可能なwarファイルが生成されます。使用してアプリケーションを実行することもできます。Bootアプリケーションに簡単に変換できるはずです。SpringApplicationBuilderの呼び出しに置き換えます。Webアプリケーションは、通常、最初にデプロイ可能なwarアプリケーションを作成し、それを後で実行可能なwarまたはjarに移行するのに適しています。jarからwarへの変換に関する入門ガイドを参照してください。アノテーションを追加してデプロイ可能なwarを作成するには、次の例に示すようなコードを使用します。ApplicationContextに過ぎないことを忘れないでください。通常、すでに動作しているものはすべてここで動作するはずです。Bootに独自のデフォルトを提供させることもありますが、それを行う前に何かを機能させることができるはずです。/META-INF/resources)に移動できます。Bootがクラスパスのルートで自動的に検出します)にも当てはまります。SecurityのVanillaの使用には、それ以上の変更は不要です。コンテキストに設定を追加する必要がある場合があります。あるかのように、そのBeanをコンテナーにインストールします。<filter-mapping/>として)。定義として再作成できます。Applicationに追加して実行可能にすることができます。メソッドの両方で使用可能なメソッドでビルダーのカスタマイズを共有する必要があります。}}アプリケーションは複数のカテゴリに分類できます。web.xmlのないサーブレット3.0+アプリケーション。web.xmlを使用したアプリケーション。コンテキスト階層を持つアプリケーション。コンテキスト階層のないアプリケーション。これらはすべて翻訳に適しているはずですが、それぞれがわずかに異なる技術を必要とする場合があります。Springサーブレット3.0+初期化子サポートクラスを使用している場合、サーブレット3.0+アプリケーションは非常に簡単に変換できます。SpringBootServletInitializerに移動できます。SpringApplicationに結合できる場合があります。発生する可能性のある主な問題は、結合が機能せず、コンテキスト階層を維持する必要がある場合です。例については、階層の構築に関するエントリを参照してください。コンポーネントが子コンテキストに含まれるように分割する必要があります。Bootアプリケーションに変換できる場合があり、前述のガイダンスが役立つ場合があります。問題が発生する場合があります。実装していることを確認する必要があります(すでに実装している基本クラスから拡張する場合でも)。WebLogicの一般的な初期化子は、次の例のようになります。{}Logbackを使用する場合は、WebLogicに、サーバーにプリインストールされているバージョンではなく、パッケージ化されたバージョンを優先するように指示する必要もあります。ファイルを追加します。含める必要があります。Bootはこれらの依存関係を管理して、このプロセスを可能な限り簡単にします。次の例は、Mavenでこれを行う方法を示しています。<artifactId>jedis</artifactId></dependency>次の例は、Gradleでこれを行う方法を示しています。