一:SpringIOC&DI
阿新 • • 發佈:2019-04-13
ssp 加載 context class per app 引用 prot single
ioc:inverse or control 控制反轉
一:spring
1.spring介紹
spring負責管理項目中的所有對象,看作是項目中對象的管家.
spring一站式框架:
spring框架性質是屬於容器性質的
容器中裝什麽對象就有什麽功能,所以可以一站式
不僅不排斥其它框架,還能幫其它框架管理對象
ioc思想
aop支持
aop事務
junit測試支持
2.spring導包
4個核心包(beans,core,context,spEL)
2個aop包(aop,aspects)
2個日誌包(log4j)
2個依賴包(aop聯盟,weaving織入)
1個web包(web)
3.spring概念
對象的創建及依賴關系可以由spring完成創建以及註入
控制反轉就是反轉了對象的創建方式,從自己創建反轉給了程序(spring)
di:dependency injection 依賴註入
實現ioc思想需要di做支持
註入方式:
set方法註入
構造方法註入
註入類型:
值類型註入 8大基本數據類型
引用類型註入 將依賴對象註入
applicationContext&BeanFactory
BeanFactory接口 spring原始接口.針對原始接口的實現類功能較為單一 BeanFactory接口實現類的容器.特點是每次在獲得對象時才會創建對象 ApplicationContext 每次容器啟動時就會創建容器中配置的所有對象.並提供更多功能 從類路徑下加載配置文件:ClassPathXmlApplicationContext 結論:web開發中,使用applicationContext. 在資源匱乏的環境可以使用BeanFactory.
4.spring配置詳解
bean元素
id:給Bean起個名字 不能重復,不能使用特殊字符.早期屬性.
name:給Bean起個名字 能重復,能使用特殊字符.後來屬性.
class:類的完整類名
生命周期屬性
init-method 指出初始化方法
destory-method 指出銷毀方法
作用範圍
scope:
singleton(默認值):單例.創建容器時會立即創建單例對象
prototype :多例.每次獲得對象時,才會創建對象,並且每次都會創建新的對象
分模塊開發
<import />
5.bean的創建方式
*** 空參構造創建
靜態工廠
實例工廠
6.註入方式
*** set方法
*** 構造方法
7.復雜屬性註入
Array
List
Map
Properties
一:SpringIOC&DI