Spring概念から原理へ

4873 ワード

Springコンセプト
  • Springはオープンソースの軽量級フレームワークであり、軽量級フレームワークは、このフレームワークが環境を構成する必要がなく使用できることを意味します.
  • Springコアには主に2つの部分がある:(1)aop(フェースプログラミング向け):フェースプログラミング向けとは、後で拡張機能がソースコードを変更することなく実現できることを意味する(2)ioc(制御反転):新しいオブジェクトを作成することはnewで実現するのではなく、springの構成によってクラスオブジェクトを作成することである.
  • Springはワンストップフレームワーク(spring再javaeeの3層構造で、各層が異なる解決技術を提供する)(1)web層:springMVC(2)service層:springのioc(3)dao層:springのjdbcTemplate
  • iocの原理
  • オブジェクト作成をspringに渡して管理する
  • ioc操作は、2つの部分(1)iocのプロファイル方式(2)iocの注釈方式
  • に分ける.
  • の下位原理で使用される技術(1)xmlプロファイル(2)dom 4 jはxml(3)ファクトリ設計モード(4)反射
  • を解決する.
    ioc実行プロセス
    サービスクラスが現在存在すると仮定し、それに対応するサービスクラスを使用する必要があるクラスservletがあり、servletクラス取得serviceクラスはファクトリクラスfactoryによって得られる.1.xmlプロファイルを作成するには、オブジェクトクラスを作成する必要がある.ファクトリクラスを作成しdom 4 j解析プロファイル+反射(メソッド名getservice())(1)dom 4 j解析xmlファイルを使用しid値に基づいて、id値に対応するclass属性値(String classValue="class属性値")(2)反射を使用してクラスオブジェクトを作成する(Class cla=Class.forName(classValue))(3)クラスオブジェクトを作成し、戻る(serviceser=cla.newInstance();return ser)
    ioc応用プロセス
    1.jarパッケージ2をインポートする.クラスを作成し、クラスにメソッド3を作成します.Springのプロファイルを作成します.プロファイルクラスを作成します(1)springコアプロファイルの名前と場所は固定されていません.一般的にはsrcの下に配置され、公式ではアプリケーションContextという名前が推奨されています.xml. (2)schema制約を導入し,spring解凍パッケージをダウンロードした後にschemaがあるフォルダの最後のファイルを探す.(3)idとclassのパスを構成することによって、オブジェクトの作成を構成する.4.ライトコードテストspringコンフィギュレーションオブジェクト作成(1)作成オブジェクトに基づいてspringコンフィギュレーションファイルをロード(2)してコンフィギュレーション作成したオブジェクトを得る
    beanインスタンス化方式
  • クラスの無パラメータ構造を使用して
  • を作成
    <bean id="service" class="    ">bean>
  • スタティックファクトリ作成(スタティックメソッドを作成し、クラスオブジェクトを返す)
  • <bean id="service" class="    " factory-method="     ">bean>
  • インスタンスファクトリを使用して作成(静的でないメソッドを作成し、クラスオブジェクトを返す)
  • .
    <bean id="service" class="    ">bean>
    <bean id="service1" factory-bean="service" factory-method="     ">bean>

    beanラベルでよく使われるプロパティ
    1.idプロパティ:idに基づいて構成オブジェクトが得られるため、idは名前であり、id名は任意に命名され、認識を容易にするために作成するオブジェクトクラスの名前が一般的である.idには特殊記号は含まれません.2.class属性:オブジェクトクラスが存在するフルパスを作成する.name属性:機能はidと同様であり、id属性値とは異なり、name属性値には特殊な記号4が含まれる.scopeプロパティ:singleton:デフォルト、単一prototype:複数例request:オブジェクトを作成requestドメインにオブジェクトを配置session:オブジェクトを作成sessionドメインにオブジェクトを配置globalsession:オブジェクトを作成globalsessionドメインにオブジェクトを配置globalsessionドメインにオブジェクトを配置
    Springプロパティ注入
    1.spring属性注入の意味は,オブジェクトを作成する際にクラス内の属性に値を設定することである.Spring属性注入の方式:(1)setメソッド注入を用いるbeanでprpertyラベルを用い,nameを変数名(属性名),valueを値(2)パラメータ構造を用いた注入:beanの下にconstruct-argラベルを用い,nameを属性名,valueを値とする
    Spring注入オブジェクトタイププロパティ
    1.注入オブジェクトタイプ属性(1)サービスクラスとdaoクラスを作成し、サービスでdaoオブジェクトを得る(2)具体的な実装手順-サービスでdaoをタイプ属性(サービスにはDaoクラスの属性がある)-daoタイプ属性を生成するset方法
    id="dao" class="    " >
    id="service" class="    " ><property name="dao" ref="dao">property>
    

    複雑なタイプのプロパティの注入
  • 配列
  • list集合
  • map集合
  • propertiesタイプ上記の4つの異なるタイプのプロパティを注入するときは、ラベルと値を加えるだけで
  • になります.
    iocとdiの違いと関係
  • ioc(制御反転):オブジェクト作成をspringに渡して構成する
  • di(依存注入):クラス内の属性への注入値
  • 関係:依存注入は単独では存在せず、iocに基づいて操作を完了する必要がある.