検索
ホームページJava&#&チュートリアルSpring-:spring-boot-bootstrapp-behind-the-scenes

spring-: spring-boot-bootstrapping-behind-the-scenes

Spring Bootアプリケーションは、スタートアップの多くのステップに遅れています。

I.スプリングブートアプリケーションステップ 1.1 JVMスタートアップとメインクラスの負荷 Java仮想マシン(JVM)は、メソッドを含むメインクラスを起動およびロードします。

    スプリングブートアプリケーションを開始するためのメソッドを実行します。これは、すべてのスプリングブートアプリケーションの入り口です。
  • public static void main(String[] args)
  • 1.3初期化

    初期化、: SpringApplication.run()判断アプリケーションタイプ(Webまたは非Web)。

    アプリケーションの構成と環境属性をロードします。
    • コンテキストの準備。 SpringApplication.run()

    SpringApplication コンテナ管理豆、構成、依存関係として、スプリングアプリケーションのコンテキストを作成します。

      Webアプリケーションの場合は、サービス(
    • など)に基づいてコンテキストを使用します。 SpringApplication
      • 登録済み
      • Beanをロードします(コンテキストが開始される前にコンテキストを変更します)。
    スプリングスキャンと任意の

    実装をロードして、外部リスナーがアプリケーションの起動通知を受信できるようにします。 ApplicationContext 1.7環境の準備(属性、構成ファイル、構成)

      環境変数、
    • または
    • 、およびコマンドラインパラメーターをロードします。
    • AnnotationConfigServletWebServerApplicationContextアクティビティとデフォルトの構成ファイルを決定します。

    ApplicationContextInitializer以下を含むコンテキストは完全に更新されています スキャンベルトには、

    • ApplicationContextInitializerアノテーションのカテゴリが含まれています。
    インスタンス化された豆とそのライフサイクルを管理します。

    アプリケーション依存性インジェクションと分析的依存関係。 SpringApplicationRunListener

    • 1.9埋め込みWebサーバーを起動します(該当する場合)SpringApplicationRunListener
    • Webアプリケーションの場合、Spring Bootは埋め込みWebサーバー(Tomcat、Jetty、またはUndertow)を自動的に起動します。

    Webサーバー指定されたポートの合格要求を監視します。

  • application.propertiesまたはapplication.ymlの豆がある場合、それらを実行します。
  • これらの豆は、アプリケーションの開始後に初期化ロジックを実行するために使用されます。

  • トリガーイベント。アプリケーションが完全に開始され、リクエストのために準備されたことを示します。 ApplicationReadyEvent
  • 1.12アプリケーション操作を維持(Webアプリケーションの場合) Webアプリケーションの場合、アプリケーションは実行され続け、HTTPリクエストが導入されるのを待ちます。 非WEBアプリケーションの場合、初期化のロジックを実行した後に終了します。
    • 2。ロジック実行順序:簡単な概要
    スタートアッププロセスを覚えるために、それは3つの主要な段階と見なすことができます:

    ガイダンス段階

    jvmアプリケーションを開始します。

    実行を実行します。 環境と構成を準備します。

    • 2️🎜コンテキストの初期化段階
    • SpringApplication.run()
    • コンテキストを作成して更新します。
    • スキャン、作成、注入豆。

    Webアプリケーションの場合は、埋め込みサーバーを起動します。

    3️🎜開始後、
    • 実行および
    • を実行します。
    • アプリケーションは完全に実行されており、リクエストを待っています。 ?

    以上がSpring-:spring-boot-bootstrapp-behind-the-scenesの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    AI Hentai Generator

    AI Hentai Generator

    AIヘンタイを無料で生成します。

    ホットツール

    WebStorm Mac版

    WebStorm Mac版

    便利なJavaScript開発ツール

    SublimeText3 Linux 新バージョン

    SublimeText3 Linux 新バージョン

    SublimeText3 Linux 最新バージョン

    AtomエディタMac版ダウンロード

    AtomエディタMac版ダウンロード

    最も人気のあるオープンソースエディター

    SublimeText3 英語版

    SublimeText3 英語版

    推奨: Win バージョン、コードプロンプトをサポート!

    SAP NetWeaver Server Adapter for Eclipse

    SAP NetWeaver Server Adapter for Eclipse

    Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。