1.利点と欠点春の元分析
(1)効果
春は、Java Enterprise Editionの(また、J2EEとして知られているのJava Enterprise Editionの、JEE)軽量の代替です。ヘビーエンタープライズJavaBean(EJB)を開発することなく、スプリングは、エンタープライズJava開発のための比較的簡単な方法を提供し、依存性注入とアスペクト指向プログラミングを通じて、単純なJavaオブジェクトを使用して、(プレーンオールドJavaオブジェクト、POJO)がEJBを実装します機能。
(2)デメリット
Springコンポーネントのコードは軽量ですが、が、その構成はヘビー級です。XMLを使用し始め、Spring構成するだけでなく、XML設定がたくさん。スプリング2.5は、アプリケーション自体の明示的なXMLコンフィギュレーションコンポーネントの多くを排除コンポーネントスキャンベースの注釈を、導入します。春3.0を使用すると、XMLを置き換えることができ、型安全な再構成可能な構成であるJavaベースの構成を紹介します。
これらの構成の全ては、開発中の損失を表します。春の機能やソリューションを考えるには、思考のビジネス上の問題を切り替えるため、アプリケーションのロジックを記述するための時間を締め出した構成を記述するように設定する必要があるため。そして、すべてのフレームワーク、春と実用的な、しかし同時にそれは報酬の多くを必要とします。
また、依存関係の管理プロジェクトは時間がかかり、労働集約的なものです。環境を設定するときは、インポートしたいライブラリの座標を分析する必要があるが、他のライブラリとの調整を分析する必要がある互換性の問題に続いて、間違ったバージョンに依存輸入依存を持って真剣に妨げになりますプロジェクトの開発の進捗状況。
2.SpringBoot概要
(1)SpringBootの欠点は、上記スプリング解決します
SpringBootはに基づいて、改善して行わ春の欠点を最適化するために、構成を超える大会アイデア、可能開発者が設定し、ビジネスロジックで思考を切り替える必要はありません、それによって、書き込みコードのビジネスロジックに身を投げました大幅に開発の効率を向上させ、ある程度のプロジェクトサイクルを短縮。
(2)SpringBoot特性
<1>速くエントリの経験のためのSpringベースの開発
ボックスのうち、<2>、ノーコード生成、およびXML設定なし。しかし、また、特定のニーズに応えるために、デフォルト値を変更することができます
<3>など埋め込まれたサーバなどの一般的な非機能特性の大規模なプロジェクトの数を提供し、セキュリティ、インデックス、ヘルスモニタリング、構成、およびその他の外部
<3> SpringBoot春のために機能していないが上の強化、が、すぐに春を使用する方法を提供するために、
(3)SpringBootコア機能
<1>の開始は、依存している
の出発は、本質的に依存しているMavenプロジェクトオブジェクトモデル(プロジェクト・オブジェクト・モデル、POM)で、他のライブラリに推移依存関係、機能をサポートすることです一緒にこれらの事を定義します。
簡単に言えば、最初の依存は一緒にパッケージ調整するための機能のいくつかの種類があり、いくつかのデフォルト機能を提供することです。
<2>自動設定が
自動的に春ブーツが使用すべきではない春を構成するために使用すべきかを決定する前に、アカウントに多くの要因を取って、実行時(正確には、アプリケーションの起動時に)プロセスで構成します。このプロセスは、春には自動的に行われます。
3.SpringBootクイックスタート
(1)Mavenプロジェクトを作成します
通常のJavaプロジェクトのために働くに使用するMavenプロジェクトのアイデアを作成ツールは、(スケルトンを使用せずに、ライン上の次のステップとなっている)ことができます。
(2)依存開始SpringBoot添加
<1>依存春ブート・スターター・親を開始SpringBoot継承するSpringBoot請求プロジェクトを
< 親> < のgroupId > org.springframework.boot </ のgroupId > < たartifactId >ばねブートスタータ親</ たartifactId > < バージョン> 2.0.2.RELEASE </ バージョン> </ 親>
<2> SpringBoot SpringMVCは輸入依存性プロモーターにコントローラー、アイテムのウェブを統合するために開発されました
< 依存性> < 依存性> < のgroupId > org.springframework.boot </ のgroupId > < たartifactId >ばねブートスタータウェブ</ たartifactId > </ 依存> </ 依存関係>
このpom.xmlファイルで:
<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> < プロジェクトのxmlns = "http://maven.apache.org/POM/4.0.0" のxmlns:XSI = "http://www.w3.org / 2001 / XMLスキーマ・インスタンス」 のxsi:のschemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 </ modelVersion > < のgroupId >ラッキー</ のgroupId > < たartifactId > springboot </ たartifactId > <</ バージョン> <! - すべてspringBootプロジェクトを継承しなければなりません-ブートスターター・春の親- > < 親> < groupIdを> org.springframework.boot </ groupIdを> < たartifactId >春ブーツ・スターター、親</ たartifactId > < バージョン> 2.0.1.RELEASE </ バージョン> </ 親> < 依存> <! - Webプロジェクトが依存しているスタート- > < 依存> <groupId >org.springframework.boot </ groupIdを> < たartifactId >春・ブート・スターター・ウェブ</ たartifactId > </ 依存関係> </ 依存関係> </ プロジェクト>
ブートストラップクラスSpringBootの(3)の調製
クラスはSpringBootによって提供さSpringBootを開始導くためにアクセスすることができます
MySpringBootApplication.java
パッケージラッキー; インポートorg.springframework.boot.SpringApplication; インポートorg.springframework.boot.autoconfigure.SpringBootApplication; // クラスの宣言は、クラスspringbootガイドある @SpringBootApplication パブリック クラスMySpringBootApplication { 公共 静的 ボイドメイン(文字列[]引数){ // 実行方法:操作springBootのクラスブートストラップ実行バイトコードオブジェクトパラメータはガイドspringBootのクラスである SpringApplication.run(MySpringBootApplication。クラス); } }
(4)ライトコントローラクラス
パッケージlucky.controller。 輸入org.springframework.stereotype.Controller。 輸入org.springframework.web.bind.annotation.RequestMapping。 輸入org.springframework.web.bind.annotation.ResponseBody。 @Controller @RequestMapping(パス = "/クイック" ) パブリック クラスQuickController { @RequestMapping(パス = "/ハロー" ) @ResponseBody パブリック文字列のHello(){ 戻り "ハローspringBoot" 。 } }
(5)試験結果
印刷コンソール:
結果にアクセスするためのブラウザ:
4.SpringBoot熱い展開
我々は、開発クラスの変更を繰り返し、およびその他のリソースのページに各変更を有効にするには再起動する必要がある後、あなたが面倒を起動するたびに多くの時間を無駄には、我々があり、改訂されたコードの発効を再起動することはできませんこの機能を実現することができますのpom.xmlに以下の設定を追加し、我々はホットデプロイを呼び出します。
<! - サーマル配備設定- > < 依存> < groupIdを> org.springframework.boot </ groupIdを> < たartifactId >春ブーツ・デベロッパーツール</ たartifactId > <! - オプション= trueに、通過に依存しません、このプロジェクトは、デベロッパーツールを依存している、あなたはデベロッパーツールを使用する場合は、再導入する必要があるプロジェクトmyboot後のプロジェクトに依存して- > < オプション> trueに</ オプション> </ 依存関係>
注意:IDEAはSpringBootが熱い失敗の理由を展開しました。
これは以下のように、のIntelliJ家田が自動的場合、自動的にデフォルトの設定をコンパイルIDEAの必要性をコンパイルしていないので、ないホットデプロイの構成の問題、根本的な理由は、起こります。
そして、+ Ctrlキー+ Altキー+ /、選択レジストリシフト
すぐにプロジェクトを作成しますSpringBoot 5.IDEA
プロジェクトの結果: