2019/11/24 學習筆記

2019/11/24 學習筆記

Spring 小結

Spring致力於簡化企業家Java開發,促進代碼的鬆散耦合。它成功的關鍵在於依賴注入和AOP。
IOC(控制反轉)或者說DI(依賴注入)是組裝應用對象的一種方式,藉助這種方式,對象無需知道依賴來自何處或者依賴的實現方式。
AOP支持,AOP可以幫助應用將散落在各處的邏輯彙集於一處——切面。當Spring裝配Bean的時候,這些切面能在運行期編織起來,這樣就能非常有效地賦予Bean新的行爲。
依賴注入和AOP是Spring框架最核心的部分,只有瞭解如何應用Spring最關鍵的功能,纔有能力去使用Spring框架的其他功能。

Bean的三種裝配方式

  • 在XML中進行顯示配置
  • 在Java中進行顯示配置(註解)
  • 隱式的Bean發現機制和自動裝配
    (儘可能的使用自動裝配,顯示配置越少越好)

首先我們創建一個Person接口


public interface Person {
	public void say();
}

然後我們創建一個Person的實現類Chinese

blic class Chinese implements Person{
	private String username;
	private int age;
	@Override
	public void say() {
		// TODO Auto-generated method stub
		System.out.println("中國人"+this.toString());
	}

(省略了相關的get方法)
然後我們創建一個xml文件(構造器注入或set方法注入值,其中設值 注入要求Bean必須滿足一下要求:
(1)Bean類必須提供一個默認的無參構造方法;
(2)Bean類必須爲需要注入的屬性提供對應的setter方法;)

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd">

    <bean class="com.qing.cap1.Chinese" id="chinese1">
      	 <constructor-arg index ="0" value="hello"/>
		<constructor-arg index ="1" value="18"/>
    </bean>
	 <bean class="com.qing.cap1.Chinese" id="chinese2">
      <property name="username" value="world"></property>
      <property name="age" value="18"></property>
    </bean>
    <bean class="com.jimisun.spring.example.MyArticle" id="myArticle"></bean>

</beans>

第二種方法:建一個config的類


@Configuration
public class MainConfig {
	//給容器中註冊一個bean,類型爲返回值的類型
	@Bean("abcPerson")
	public Chinese Chinese(){
		return new Chinese("jame",20);
	}
}

第三種:需要在Chinese中加入@Component
MainConfig中加入@ComponentScan
然後使用@Autowried自動裝配
Spring 從兩個角度來實現自動化裝配

  • 組件掃描:Spring會自動發現應用上下文中所創建的Bean
  • 自動裝配:Spring自動滿足Bean之間的依賴
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章