SpringBoot フレームワークの概要

過去 2 年間で最も人気のあるエンタープライズ レベルの開発フレームワークは何かと言いたいなら、それは SpringBoot です。これは非常に優れたオープン ソース フレームワークです。ここにいる友人の中には質問があるかもしれません。現在、非常に多くの優れたオープン ソースがあります。 SpringBoot はなぜ登場するとすぐに人気が出るのでしょうか? 実は、これほど人気が​​あるのには理由があって、SpringBoot は巨人の肩の上に立っていたのですが、この巨人は誰ですか? それは優れたオープンソース フレームワークである Spring です。これを見れば誰でも分かるはずですが、これほど優れたフレームワークを背負っているのに、どうして SpringBoot が優れていないのでしょうか?

SpringBoot フレームワークを正式に紹介する前に、優れたオープンソース フレームワークである Spring について簡単に説明します。詳細については、Spring の記事を参照してください。


1. スプリングフレームワーク

春

Spring フレームワークは、Rod Johnson によって開始されたオープンソースの J2EE アプリケーション フレームワークであり、Bean のライフサイクル管理のための軽量のコンテナーです。Spring は、J2EE 開発で開発者が遭遇する多くの一般的な問題を解決し、IOC、AOP、Web MVC などの強力な機能を提供します。Spring は単独でアプリケーションを構築するために使用できますが、Struts、Webwork、Tapestry などの多くの Web フレームワークと組み合わせて使用​​したり、Swing などのデスクトップ アプリケーション AP と組み合わせたりすることもできます。したがって、Spring は JEE アプリケーションだけでなく、デスクトップ アプリケーションやアプレットにも適用できます。

特徴:

1. 便利なデカップリングと簡素化された開発

Spring が提供する IoC コンテナを通じて、オブジェクト間の依存関係を Spring で制御し、ハードコーディングによる過度のプログラム結合を回避できます。Spring を使用すると、ユーザーはシングルインスタンス モードのクラスやプロパティ ファイルの解析などの下位レベルの要件に対応するコードを記述する必要がなくなり、上位レベルのアプリケーションに集中できるようになります。

2. AOPプログラミングのサポート

Spring が提供する AOP 機能はアスペクト指向プログラミングを容易にし、従来の OOP では実装が困難な多くの機能を AOP を通じて簡単に処理できます。

3. 宣言型トランザクションのサポート

Springでは単調で退屈なトランザクション管理コードから解放され、宣言的に柔軟にトランザクションを管理できるようになり、開発効率と品質が向上します。

4. 便利なプログラムテスト

ほとんどすべてのテスト タスクは、コンテナに依存しないプログラミング方法で実行でき、Spring ではテストはもはや高価な操作ではなく、簡単に実行できるものになりました。例: Spring は Junit4 をサポートしており、アノテーションを通じて Spring プログラムを簡単にテストできます。

5. さまざまな優れたフレームワークの便利な統合

Spring は、さまざまな優れたオープンソース フレームワークを排除するものではなく、むしろ、さまざまなフレームワークの使用の困難さを軽減することができ、Spring はさまざまな優れたフレームワーク (Struts、Mybatis、Hessian、Quartz など) を直接サポートします。

6. Java EE APIの使用の難しさを軽減する

Spring は、多くの使いにくい Java EE API (JDBC、JavaMail、リモート呼び出しなど) に薄いカプセル化層を提供します。Spring の単純なカプセル化により、これらの Java EE API を使用する難しさは大幅に軽減されます。

7. Java ソース コードは古典的な学習パラダイムです

Spring のソース コードは、マスターの Java 設計パターンの柔軟な使用と Java テクノロジにおける深い成果を反映して、絶妙に設計され、構造が明確で、独創的です。Spring フレームワークのソース コードは、間違いなく Java テクノロジのベスト プラクティスの例です。短期間で Java の技術レベルやアプリケーション開発レベルを向上させたい場合は、Spring のソース コードを学習および研究すると、予期せぬ成果が得られます。


2、SpringBoot フレームワーク

スプリングブーツ

SpringBootはSpringをベースに開発された軽量な新しいフレームワークで、Springフレームワーク本来の優れた機能を継承するだけでなく、設定を簡素化することでSpringアプリケーション全体の構築・開発プロセスをさらに簡素化します。Spring Boot を使用すると、自己完結型の実稼働グレードの Spring ベースのアプリケーションを簡単に作成できます。SpringBoot はマイクロフレームワークとも呼ばれます。

特徴:

1. スタンドアロン Spring アプリケーションを作成でき、Maven または Gradle プラグインに基づいて、実行可能な JAR および WAR を作成できます。

2. Tomcat や Jetty などのサーブレット コンテナを埋め込みます。

3. Maven 構成を簡素化するために、自動構成された「スターター」プロジェクト オブジェクト モデル (POMS) を提供します。

4. Spring コンテナを可能な限り自動的に構成します。

5. メトリクス、ヘルスチェック、外部化された構成などのすぐに使える機能を提供します。

6. コード生成はまったく必要なく、XML 構成も必要ありません。

最も重要なことは、大量の XML 構成を減らすことです。一般に、一言で言えば、SpringBoot フレームワークを使用してプロジェクトを開発すると、独立した運用レベルの Spring ベースのアプリケーションを簡単に作成できます。


3. SpringBoot環境構築

SpringBoot については、皆さんも基本的な理解はされていると思いますが、SpringBoot の素晴らしさをお伝えしてきましたが、実際に SpringBoot 環境を構築したことはありません。SpringBoot の簡単かつ高速な開発を体験するのは難しいです。簡単に説明しましょう。 SpringBoot 開発環境を構築して、SpringBoot の効率性を誰もが体験できるようにします。

SpringBoot の小さなケースのディレクトリ構造

最初のステップは、新しい Maven プロジェクトを作成し (Maven の形式で新しい SpringBoot プロジェクトを作成します)、スケルトンを選択し、[Webapps] をクリックして、[次へ] をクリックし、必要に応じて最後までクリックします。

2 番目のステップでは、依存関係を導入し、pom.xmlSpringBoot 親プロジェクトの依存関係と Web 依存関係をファイルに導入します。

<!--继承springboot的父项目-->
<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.2.4.RELEASE</version>
</parent>
<!--引入web支持-->
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>

3 番目の手順では、src/main/resourcesディレクトリに新しい構成ファイルを作成しapplication.yml(このディレクトリ内のみ)、SpringBoot プロジェクト名を指定します (オプションまたは指定なし)。

server:
  servlet:
    context-path: /springboot

4 番目のステップは、すべてのサブパッケージの上に位置する SpringBoot のグローバル エントリ クラスを開発することです。

package cn.ppdxzz;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * Description: SpringBoot入口类
 * @Author: PeiChen JavaAnything
 */
@SpringBootApplication
@RestController
public class Application {
    
    
    public static void main(String[] args) {
    
    
        //启动SpringBoot应用,参数一:入口类类对象,参数二:main函数参数
        SpringApplication.run(Application.class,args);
    }

    @GetMapping("/hello")
    public String hello(@RequestParam(value = "name", defaultValue = "SpringBoot") String name) {
    
    
        return String.format("Hello %s!", name);
    }
}

5 番目のステップでは、SpringBoot プロジェクトを開始し、ブラウザに http://localhost:8080/springboot/hello と入力すると、出力情報が表示されます。こんにちは、スプリングブート

最後に、面白いことをお伝えしたいと思います。それは、SpringBoot は、プログラマによって破壊されてきたカスタム バナー、SpringBoot バナーをサポートしているということです (ははは)。以下は私のバナーです。オンラインで直接見つけることができ、たくさんあります。また、オンライン生成もサポートしています。使い方は非常に簡単です。src/main/resources下にbanner.txt



ここまでで、簡単な SpringBoot アプリケーション環境が構築できたので、設定ファイルを書く必要があるという人もいるかもしれませんが、ここで言いたいのは、これらが SpringBoot の最も基本的な設定ファイルであるということです。SpringBoot が高速開発フレームワークの名前に値するとまだ思わない場合は、私の別の記事「SSM 構成ファイル」を読むと、すごいことに SpringBoot には構成ファイルがほとんどないことがわかります。 . .

実際、これほど多くの手間を省き、多くの設定ファイルを記述する必要がない理由は主に、SpringBoot が最下層で自動的に設定を行っており、それを取得するだけでよいという事実によるものです。そしてそれを使ってください。SpringBoot のクイック スタートはこれで終わりです。次回、何もすることがないときに、一番下で SpringBoot が何をするかについて説明します。

おすすめ

転載: blog.csdn.net/active_pig/article/details/107634725
おすすめ