レビュー
序文
エントリーレベルの録音ソフトではなく、あまりにも多くの技術的な内容としては、簡単な構成のフレームワークは、それを構築します。上述スプリング、これは主に二つの要素から成るヘビーSSHフレームワークであるべきである:制御\の依存性注入の反転及びAOPアスペクト指向プログラミング。
1が異なるため、翻訳の制御IOC \の依存性注入DIの反転、ので、2つの名前があります。
制御の反転は、我々はメソッドやクラスを呼び出すとき、私たちはもはや、他の誰か(春)への制御を、このクラスのオブジェクトを作成するためのイニシアチブを持っているということではありませんを意味します。
依存性の注入は、我々はそれを使用できるようにオブジェクトを作成するために、春のイニシアチブは、クラスと呼ばれ、その後、私たち自身のクラスのオブジェクトに注入されて、ということであることを意味します。
ここで疲れたプログラム猿の残業月は、その後、食べに行きました、リラックスしたいの下に、簡単な例である「スパイシー。」
仕事に取り掛かる「場所」を適用することで合意以下、人材や物的資源の多くを費やす、ターゲットを見つけるために率先して、私たち自身のストリートストリートマイクロ文字や他のアーティファクトを通じて、伝統的な春の練習を使用しないでください。
春の練習の使用は非常に便利です、私たちは、その場所には直接のターゲットが待機していたされている場所に直接行きます!
どのような幻想的な特徴ああ!
(この図伴う暴力、18歳、単独で責任を負います)
2 AOP指向プログラミング
私たちは、この方法は、セクションとして見られている、または周囲の前部と後部に、あなたは他の治療法、いくつかの特別な処理を設定することができます置きます。
たとえば、「ケーキ」のアプローチは、このメソッドの前に、あなたがプログラムした後、この方法によって達成することができ、「クリーンアップ」する必要がある「開梱」する必要があります。
その後、次の符号化プロセスは、それを見て!
1まず、噴射モードが設定されている(注入が設けられ、噴射コンストラクタが必要で構成セッター関数を必要とし、対応するプロファイルが異なるbean.xmlている)は、いくつかの方法により、豆の必要。
2 bean.xmlは、豆のクラス、および関連するデフォルト値の注入との間の関係を提供しました。
3、bean.xmlファイルを取得するには、オブジェクトのインスタンスを作成し、直接メソッドを呼び出します。
あなたは、その値を取得するには、直接そのメソッドを呼び出すことができ、我々はプログラムのみ第三段階「に直接メソッドを呼び出すオブジェクトのインスタンスを作成します」を開発しました、そして彼のために初期化し、他の仕事していない、見ることができます。プログラムが初期化されたときに実際には、春には、それは私たちが豆対応するオブジェクトが入ってくると、私たちは、初期化を完了助け注入するだろうために、私たちはただのオブジェクトへの参照を渡す、あなたは直接呼び出すことができます。
最後に、私たちは、小さなサンプルの簡単な依存性注入を書きます!
1瓶のパッケージと必要なファイル構造
JARパッケージをダウンロードします。http://pan.baidu.com/s/1sjDbzrR
srcディレクトリ下に置かれた2 bean.xml設定ファイル、
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns="http://www.springframework.org/schema/beans"
4 xsi:schemaLocation="http://www.springframework.org/schema/beans
5 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
6 <bean id="person" class="com.test.bean.Person">
7 <property name="name" value="xingoo"/>
8 <property name="age" value="12"/>
9 </bean>
10 </beans>
本明細書で提供される3人クラスは、注入モードに設定されています
package com.test.bean;
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void info(){
System.out.println("一起来吃麻辣烫!");
System.out.println("name:"+getName()+" age:"+getAge());
}
}
4試験クラス
package testSpring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.test.bean.Person;
public class test {
public static void main(String[] args){
ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");//读取bean.xml中的内容
Person p = ctx.getBean("person",Person.class);//创建bean的引用对象
p.info();
}
}
5つの実行結果
ます。https://my.oschina.net/u/204616/blog/545478で再現