浅談スプリング

2987 ワード

はじめに
springという単語から翻訳すると春です.javaプログラマーを意味する春は、生き生きとした感じがします.でも、正直に言うと、大学からjavaを勉強してから今までずっとspringやspring bootを使っています.EJBなど昔の「冬」時代を経験していません.そんなに深く感じられないかもしれません.個人的にも読んだ本の中で、私のspringに対する理解と見方をまとめました.足りないところがたくさんあると思います.ご指摘をお願いします.
二、スプリングは何ですか?
Springはオープンソース級Java開発アプリケーションの枠組みであり、アプリケーションの開発を簡素化し、生産効率を向上させることを目的としています.
1.軽量級ゼロ配置プログラミング、API使用が簡単である(spring bootはさらにこの利点を発揮し、構成がより少なく、より明確である)
2.bean向けには普通のbeanだけを書く必要があります.
3.松カップリングはAOP思想を十分に利用しています.
4.万能ゴムと私達がよく使うフレームは良い集積ができます.
5.設計モードはJava経典の設計モードを十分に運用しています.
三、なぜSpringを使うのですか?
個人は4つの要約に十分だと思います.開発を簡略化するには主に4つの重要な戦略を採用しています.2.注入に依存し、インターフェースに向かって緩く結合する.3.断面と慣性に基づいて声明式のプログラミングを行う.4.断面とテンプレートによって試料式の重複コードを減少させる;
以上からも分かるように、スプリングが一番重要なのはビーンに向かって注入し、面に向かうことです.
四、スプリングの基本原理
4.1 bean向け
Beanに向けての役割はJavaの対象に向けての意味と同じで、ここでは次のプロセスと対象に向けた個人的な見方を比較します.C言語のプロセスはコードの再利用と管理にとって非常に不便です.対象によってclassを作成します.そして、名前の決まりに合わせて、彼のクラスが何をしているのかをより直感的に知ることができます.これらは対象に向けたメリットです.だからspringはbeanに向かっています.springの中のものをよりよく理解してくれると思います.Springの中で最も核心となるIOC容器はbeanを格納するものであり、beanとbeanの間の依存関係が保存されている.
4.2 IOC制御反転
簡単に分かりやすい例をとって、私達は一つのクラスを作ります.このクラスの中の方法はnew一つの変数が実用化されてこそ、中の対象を使うことができます.springを使って、私達はただ一つ@atowriteの注釈を加えるだけで、私達はこの方法を使うことができて、springは自分で初期化、実用化を行って、これはつまり制御権です.私たちはコントロールをスプリングに任せました.これはコントロール反転ということです.
私達自身はnewのオブジェクトを一つの変数で保存できますが、私達のspringはこれらのオブジェクトを実際化した後、どうやって保存しますか?答えはIOC容器で、springが実用化されたJava beanを保存しています.しかし、IOCの最終的な目標はこれらのbeanを保存するためだけではなく、依存注入を実現するためである.
注入依存とは?また、実際に開発したいくつかの例をとって、まず@autwriteでインターフェースを注釈します.springは自動的にその実現類を注入します.たとえば:
@autowrite
Interface Test test;
第二は、IOC容器中のクラスID(abc)オブジェクトに基づいて自動的に注入されてもよく、例えば親子の種類を区別することができる.
@Resource("abc")
A a;
第3は、タイプに応じて自動的に注入することができます.例えば、
@autowrite
A a;
第四の実用化の順序、例えば
class A{
    private B b;
    public void Test(){
        b.xxx();
    }
}

class B{
    private A a;
}
実装順序:a b c
個人的には、springと言えば、自動的に依存関係を明らかにして、賦課することができます.
Spring注入方式:1、setter 2、構造方法3、強制赋価により、prvateに設定しても、赋価が可能です.
4.3 AOP面向け
ネット上ではAOPについての説明がたくさんありますが、個人的には全部公式すぎると思います.見たばかりの時も見ても分かりません.分かりやすい説明でAOPを言いたいです.AOPの核心思想は通俗的に言えば、まず一つの全体を分割して、それぞれ開発し、発表する時、組み立てて一緒に運行します.どうやって分割しますか?一つの規則に従って分割します.ルールは一つの面です.実際には、表面に向かってプログラミングするというルールはどのように制定されますか?ですから、AOPのポイントはどのようにルールを制定しますか?各モジュール間の対応する規則をまとめて、うどんを構成して、それを単独に引き出して分解します.
私達の開発でよく使われている例を挙げます.事務の実行順序:第一歩:事務の開始第二ステップ:事務の提出/事務の回転を実行する第三ステップ:事務を閉じる
このような規則的なものは、彼が固定的な規則だと考えられます.この時、私達は単独で一定の規則を持っている規則を抜き出して、独立したモジュールとして、うどんです.