隨著時代不斷地變遷,曾經用的最多的載入方式配置檔案方式,已經漸漸的遠離大眾的視野,所以在這個章節裡也不做過多介紹。
隨著spring boot 快速開發,以及越來越多人開始使用springcloud。大家也逐漸捨棄了傳統的spring mvc 模式。註解方式的注入的使用就逐漸廣泛起來。本章節講簡單介紹配置注入的方式和基本引數。
建立實體類person,並補充get set 方法,或者用 lombok註解替代 getset方法,這裡就列舉傳統的實體類方式。
package com.demo.bean;
public class person
public void setname(string name)
public string getid()
public void setid(string id)
}
建立spring注入類 democonfiguration
package com.demo.config;
import com.demo.bean.person;
import com.demo.service.bookservice;
import org.springframework.context.annotation.*;
import org.springframework.stereotype.controller;
import org.springframework.stereotype.service;
@configuration
public class democonfiguration
}
建立spring環境測試類
package com.demo.test;
import com.demo.bean.person;
import com.demo.config.mianconfiguration;
public class demotest
}
下一步想要延續spring mvc 傳統的三層架構
我們都知道,spring mvc 傳統需要配置包掃瞄的路徑那麼,註解的方式如何配置呢?
package com.demo.config;
import com.demo.bean.person;
import com.demo.service.bookservice;
import org.springframework.context.annotation.*;
import org.springframework.stereotype.controller;
import org.springframework.stereotype.service;
@configuration
@componentscan(value = )
public class democonfiguration
}
按照如上配置就可以了。那麼如何配置包含過濾器和除去過濾器呢?其實兩者配置幾近相同,直有某個引數需要注意。
//配置類==配置檔案
@configuration //告訴spring這是乙個配置類
@componentscans(
value = ),
@filter(type=filtertype.assignable_type,classes=),*/
@filter(type=filtertype.custom,classes=)},usedefaultfilters =false)
} )
//@componentscan value:指定要掃瞄的包
//excludefilters = filter :指定掃瞄的時候按照什麼規則排除那些元件
//includefilters = filter :指定掃瞄的時候只需要包含哪些元件,在包含的時候需要新增引數
//usedefaultfilters = false 過濾預設的過濾器
按照註解
按照給定的型別;
使用aspectj表示式
使用正則指定
使用自定義規則(需要實現typefilter介面)
public class mainconfig
}
基本的掃瞄完成了,那麼bean的型別有哪些呢?
bean的型別總共有四種,其中常用的兩種分別是 prototype 以及 singleton
prototype 型別 是在獲取bean例項的時候對bean進行初始化,同乙個spring環境下會有多個同名bean
singleton 型別 實在註冊的時候就對bean進行初始化(不使用懶載入的情況下)
使用的註解是 @scope
而提到的懶載入就是為了節省系統資源在bean例項被呼叫時才使用 註解為 @lazy
Spring原始碼解析(四) 元件註冊4
給容器中註冊元件 1 包掃瞄 元件標註註解 controller service repository component 自己寫的類 2 bean 匯入的第三方包裡面的元件 3 import 快速給容器中匯入乙個元件 1 import 要匯入到容器中的元件 容器中就會自動註冊這個元件,id預設是全...
Spring學習 十五 元件註冊總結
給容器中註冊元件 1 包掃瞄 元件標註註解 controller service repository component 自己寫的類 2 bean 匯入的第三方包裡面的元件 3 import 快速給容器中匯入乙個元件 1 import 要匯入到容器中的元件 容器中就會自動註冊這個元件,id預設是全...
spring容器註冊元件的方式
給容器註冊元件的方式 1.包掃瞄 元件標註註解 controller servuce repostiory component 侷限自己寫的類 1 配置檔案的方式 在com.dingaimin包下的並使用 controller servuce repostiory component 註解的類會被載...